千家信息网

python编程语言在操作文件编码格式的应用过程

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这期内容当中小编将会给大家带来有关python编程语言在操作文件编码格式的应用过程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。建立一个文件test.txt,文件格
千家信息网最后更新 2025年01月16日python编程语言在操作文件编码格式的应用过程

这期内容当中小编将会给大家带来有关python编程语言在操作文件编码格式的应用过程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

建立一个文件test.txt,文件格式用ANSI,内容为:abc中文用python来读取

# coding=gbk print open("Test.txt").read()

结果:abc中文把文件格式改成UTF-8:显然,这里需要解码:

# coding=gbk import codecs  print open("Test.txt").read().decode("utf-8")

结果:abc中文上面的test.txt我是用Editplus来编辑的,但当我用Windows自带的记事本编辑并存成UTF-8格式时,运行时报错:

  1. Traceback (most recent call last):

  2. File "ChineseTest.py", line 3, in

  3. print open("Test.txt").read().decode("utf-8")

  4. UnicodeEncodeError: 'gbk' codec can't encode
    character u'\ufeff' in position 0: illegal multibyte
    sequence

原来,某些软件,如notepad,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。因此我们在读取时需要自己去掉这些字符,python中的codecs module定义了这个常量:

# coding=gbk import codecs  data = open("Test.txt").read()  if data[:3] == codecs.BOM_UTF8:  datadata = data[3:]  print data.decode("utf-8")

上述就是小编为大家分享的python编程语言在操作文件编码格式的应用过程了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

0