一、字符编码
字符 编码 二进制
保证不乱码的关键在于当初用什么代码编写的就应该使用什么编码来解码
decode是解码 encode是编码
二、文件处理
1、操作系统为用户、应用程序提供的一种操作硬盘的抽象单位
r代表原生字符串,代表路径
绝对路径:从头开始写的
相对路径:同一文件夹下
2、文件的打开模式
r:只读模式,当文件不存在时会报错,存在时文件指针会指向文件的开头
w:只写模式,当文件不存在时会新建一个空文档,存在时清空文件文档,文件指针跑到文件的开头
a:追加写模式,当文件不存在时会新建一个空文档,文件存在时,文件指针跑到文件末尾
3、控制读写文件单位的方式(必须与r/w/a连用)
t:文本模式(默认的),一定要指出encoding参数
操作系统会将硬盘中二进制数字解码成unicode然后返回,强调只针对文本有效
b:二进制模式,一定不能指定enconding参数
文件指针的移动只有在t模式下的read(n)模式,n代表的是字符的个数,除此以外文件内指针的移动都是以字节为单位
f.seek()的两个参数 offset代表的是指针移动的字节数
whence代表的是参照什么位置进行移动 0代表开头,1代表当前位置,2代表文件末尾
使用f.open()打开文件,必须使用f.close()关闭文件