python技巧(17)

来源:互联网 发布:abs检测软件 编辑:程序博客网 时间:2024/06/05 15:55

如何读写文本文件
python2和3的区别
2 3
str字符串实际时一连串的bytes
unicode只在内存中用是中介,读取时转换为unicode,存储时把unicode转换为指定编码

python2:在写入文件前(还在内存中到外部时需存为指定的编码格式)对unicode进行编码,读入文件后(进入内存需要转成unicode)对二进制字符串进行解码
python3:open函数指定‘t’的文本格式,encoding指定编码格式
注意:编码和解码要使用统一的格式
编码和解码的目的:将之转换为计算机理解的语言,便于在网络上能把不同语言转化为同一标准网络语言传输
方式:python
accii:a=’中国’
unicode:a=u’中国’
写入
f=open(‘C:\Users\yongsheng\Desktop\a.txt’,’w’)(w和w+的区别:覆盖/追加)
f.write(a.encode(‘utf8‘))
f.close()
打开
f=open(‘C:\Users\yongsheng\Desktop\a.txt’,’r’)
f.read().decode(‘utf8‘)
注意这里:命令行下可以使用gbk编码,ide下使用utf8编码,两者一般都要求先用unicode字符,如果不是unicode字符,则可以直接写入
方式:python3中
字节型:b’中国’
unicode:’中国’
写入
f=open(‘C:\Users\yongsheng\Desktop\a.txt’,’wt’,encoding=’utf8‘)
f.write(‘我爱你’)
f.close()
读入
f=open(‘C:\Users\yongsheng\Desktop\a.txt’,’rt’,encoding=’utf8‘)
f.read()
f.close()

0 0