python怎么写入txt文件_python怎么中文写txt文件

ANSI:默认保存的编码格式,采用本地操作系统默认的内码,简体中文一般为GB2312。

Unicode:UTF-16的小端字节序,加上BOM签名:0xFFFE。

Unicode bigendian:Unicode编码:UTF-16的大端字节序,加上BOM签名:0xFEFF。

UTF-8:编码格式是:UTF-8,其BOM为0xEF BB BF(UTF-8不区分字节序,这个BOM仅标志UTF-8编码)

Python对于读取的txt文件,最好在读取的时候进行decode成unicode编码,

def read_out(self): with codecs.open(self.filename, 'r+') as get: return get.read().decode('gbk')

然后再写入的时候进行encode成对应想要的编码类型,这样可以保证源文件的编码方式不会改变,且中文不会乱码

整个代码过程保持使用unicode编码方式利用try…except 来进行编码判别具体使用了那种编码方式

f.write(self.filename.encode('gbk'))

二、对于raw_input 通过键盘输入的文字,通过sys模块中的stdin.encodeing来进行解码

content = raw_input().decode(sys.stdin.encoding)

type(content) 是unicode

暂时这么多

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值