一、字符编码
1、背景:
——打开文本编辑器就在内存中启动了一个进程,所以编辑器编写内容都是存放在内存中,断电后数据丢失,只要保存了,就会保存到硬盘里。
——python解释器执行文件的过程:首先启动》》从硬盘里读取内容到内存》》执行内存中的代码
2、什么是字符编码?
编程的目的让计算机干活,计算机只能够识别数字,人编写的程序是人能看懂的,所以必须经历一个过程字符------翻译的过程-------数字,这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码
二、字符编码的发展史
阶段一:计算机起源于美国,最早诞生基于ASCLL——一个bytes代表一个字符,1bytes=8bit(1个0或者1就是1个bit)
阶段二:中国人定制了GBK——2bytes代表一个字符,日本定制了shift_JIS
阶段三:在多语言的文本中,容易出现冲突,显示出来的就会有乱码,于是产生了unicode,统一用2bytes代表一个字符,如果都是英文的文本来说,这种编码就多了一倍的存储空间,于是就有了utf-8,对英文字符用1个bytes,对中文用3个bytes
1、内存中使用的是编码是unicode,因为内存要尽可能的快
2、硬盘中或网络传输用utf-8,保证数据的稳定性
三、字符编码的使用
1、文本编辑器的字符编码的使用方式
核心法则就是,文件以什么编码保存,就以什么编码方式打开
二、文件处理
1、文件处理流程
f = open('chenli.txt') #打开文件 first_line = f.readline() print('first line:',first_line) #读一行 print('我是分隔线'.center(50,'-')) data = f.read()# 读取剩下的所有内容,文件大时不要用 print(data) #打印读取内容 f.close() #关闭文件
2、文件的打开模式
1 文件句柄 = open('文件路径', '模式')
打开文件的模式有: r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】 w,只写模式【不可读;不存在则创建;存在则清空内容】 x, 只写模式【不可读;不存在则创建,存在则报错】 a, 追加模式【可读; 不存在则创建;存在则只追加内容】 "+" 表示可以同时读写某个文件 r+, 读写【可读,可写】 w+,写读【可读,可写】 x+ ,写读【可读,可写】 a+, 写读【可读,可写】 "b"表示以字节的方式操作 rb 或 r+b wb 或 w+b xb 或 w+b ab 或 a+b 注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码