5-1 如何读写文本文件?

2019-02-10  本文已影响0人  Diolog

实际案例:

首先,字符串的语义发生了变化

python2 python3
str bytes
unicode str

解决方案:

  1. python2.x :写入文件前对unicode编码,读入文件后对二进制字符串编码.
  2. python3.x :open函数指定't'的文本模式,encoding指定编码格式.

Python2中的文本读写

f = open('py2.txt','w')
s = u'你好'
f.write(s.encode('gbk'))
f.close()
f = open('py2.txt','r')
t = f.read()   =>  '\xc4\xe3\xba\xc3'
t.decode('gbk')  =>  u'\u4f60\u5977d'
print t.decode('gbk') => 你好

Python3中的文本读写

f = open('py3.txt','wt',encoding='utf8')
f.write('你好,我爱编程.')
f.close()
f = open('py3.txt','rt',encoding='utf8')
s = f.read()
print(s)
上一篇 下一篇

猜你喜欢

热点阅读