unicode encode 保存文件 –》硬盘utf8 二进制 —>decode读取文件—>内存unicode
python3 默认文件编码是utf8 默认字符串编码是unicode
1.程序执行前,程序代码先加载到内存中,所占的内存为unicode编码的二进制1
2
3
4
5
6
7
8
9
10
11
12x='morgana'程序执行时,临时申请的内存空间unicode编码的二进制
y='morgana'.encode('utf8') 程序执行时 临时申请的内存空间utf8编码的二进制
python2 默认ASCii码
x='盖'
print(x)
y='盖'.encode('utf-8') #保存文件
print(y)
py2:unicode-->encode(编码后)-->bytes=str
py3:unicode
windows cmd 默认 gbk
1 |
|
#1.依赖于索引 把大文件直接读到内存 不合理1
2
3
for i in range(len(l))
print(l[i])
#2.不依赖于索引 优点读一行打印一行 文件大小没关系1
2
3
4
5
6
7
8
9
10
11
for line in f:
print(line,end='')
for line in read_f:
if 'morgana' in line:
print('ok')
else:
write_f.write(line)
#3.readline1
2
3
4
5
6
7
8
9
10
def readhotile(OLDFILE):
with open(OLDFILE,'r',encoding="utf-8") as f :
dic1={}
done=0
while not done:
line=f.readline()
else:
done =1