• 17.次重点


    01.读写文件

    1、读写文件(python如何读取大文件):https://www.cnblogs.com/xiaonq/p/7860309.html
    
    2、经典面试题:现在有一个5G的文件,用python写入另一个文件里
    
      1、read(): 指定读取指定大小的文件(默认一次读取所有)
      2、readline(): 逐行读取,适合读大文件
      3、readlines(): 一次性读取所有文件, 将文件按行读取成列表
    3、我们使用了一个 while 循环来读取文件内容,每次最多读取 8kb 大小
    
    4、这样可以避免之前需要拼接一个巨大字符串的过程,把内存占用降低非常多。
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    def read_big_file_v(fname):
        block_size = 1024 * 8
        with open(fname,encoding="utf8") as fp:
            while True:
                chunk = fp.read(block_size)
                # 当文件没有更多内容时,read 调用将会返回空字符串 ''
                if not chunk:
                    break
                print(chunk)
    path = r'C:aaalutingedc-backend	ttt.py'
    read_big_file_v(path)

    02.字符编码

    各种编码由来
    
    ASCII : 不支持中文(一个字母一个字节:a/b/c)
    GBK : 是中国的中文字符,其包含了简体中文和繁体中文的字符
    Unicode : 万国编码(Unicode 包含GBK)
    
    
    Unicode(每个字母需要用两个字节:a/b/c)
    
    存储所有字符串都用连个字节
    Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码
    规定所有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536
    这里还有个问题:使用的字节增加了,那么造成的直接影响就是使用的空间就直接翻倍了
    Utf-8 : 可变长码, 是Unicode 的扩展集
    
    UTF-8编码:是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类
    
    ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...
    
    存一个a字母用一个字节,存一个中文用三个字节
    
    
    python2与python3的几个区别
    
    Python2默认 编码方式为ASCII, Python3 默认编码方式为UTF-8(是Unicode 的扩展集)
    python2中字符串有str和unicode两种类型, python3 中字符串有str和字节(bytes) 两种类型
    python3中不再支持u中文的语法格式
    python2和python3中编码转换
    
    在python3中字符串默认是unicode所以不需要decode(),直接encode成想要转换的编码如gb2312
    在python2中默认是ASCII编码,必须先转换成Unicode,Unicode 可以作为各种编码的转换的中转站

    03.常用模块

    (re)(paramiko、subprocess):https://www.cnblogs.com/xiaonq/p/7866925.html

    04.python2与python3的区别

    https://www.cnblogs.com/xiaonq/p/8706111.html

  • 相关阅读:
    五分钟秒懂机器学习混淆矩阵、ROC和AUC
    五分钟学会Python装饰器,看完面试不再慌
    LeetCode54 螺旋矩阵,题目不重要,重要的是这个技巧
    Golang——变量的声明与定义
    LeetCode52题,别再问我N皇后问题了
    spark中的pair rdd,看这一篇就够了
    MySQL不香吗,为什么还要有noSQL?
    JBOSS安装配置详细教程
    Aspose.Words关于域的应用
    SqlServer PIVOT行转列
  • 原文地址:https://www.cnblogs.com/xiaoxiamiaichiyu/p/14586629.html
Copyright © 2020-2023  润新知