问题

文件输出到文件有时候需要进行编码的转换,不然可能会输出乱码。

python3中可以使用

open(filename,mode=’w’,encoding=’utf-8′)

进行对编码进行转换。python2中并不支持该方法。

解决方法

方法一:


with open('./test.txt', 'w') as f:
  f.write('测试\n')
  f.write('测试\n'.decode('utf-8').encode('gb2312'))
  f.write(u'测试\n'.encode('gb2312'))

方法二:

使用内置模块codecs模块


import codecs

with codecs.open('./test.txt', 'w', encoding='utf-8') as f:
  f.write(u'测试')

这样就可以像python3进行使用类似

open(filename,mode=’w’,encoding=’utf-8′)

形式了

说点什么
请务必填写正确的邮件地址,当有回复时您会收到邮件提醒。
头像
支持Markdown语法
好耶,沙发还空着ヾ(≧▽≦*)o
Loading...