python读取中文txt文本的方法

 更新时间:2018年04月12日 15:57:53   作者:jingyi130705008  
下面小编就为大家分享一篇python读取中文txt文本的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

对于python2.7

字符串在Python2.7内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码成unicode,再从unicode编码成另一种编码。

先用一些编辑器(如editplus )看一下你的txt文件保存的是utf-8,还是gb2312或其他的。当你读行时可以这样

line = (file1.readline()).decode('utf-8').encode('gb2312')或
line = (file1.readline()).decode('gb2312').encode('utf-8')

注意:txt使用utf8编码的时候会默认在文件开头插入三个不可见字符。这个是windows用来判断txt编码是否为utf8的。所以如果你直接使用decode('utf-8')的话是得不到正确结果的。

必须先判断前三个字符是否是windows插入的那三个。这个python已经定义了一个常量了,可以直接和这个常量比较,如果一样就删除前三个字符然后再decode。

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

延伸:

因为decode的函数原型是decode([encoding], [errors='strict']),可以用第二个参数控制错误处理的策略,默认的参数就是strict,代表遇到非法字符时抛出异常;

如果设置为ignore,则会忽略非法字符;

如果设置为replace,则会用?取代非法字符;

如果设置为xmlcharrefreplace,则使用XML的字符引用。

对于Python3

python3下比较简单,打开的时候指定encoding参数即可:open("txt.txt", encoding="gbk").read()。

以上这篇python读取中文txt文本的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 利用python解决mysql视图导入导出依赖的问题

    利用python解决mysql视图导入导出依赖的问题

    这篇文章主要给大家介绍了关于利用python解决mysql视图导入导出依赖的问题,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-12-12
  • python向MySQL数据库插入数据的操作方法

    python向MySQL数据库插入数据的操作方法

    这篇文章主要介绍了python向MySQL数据库插入数据,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-11-11
  • Python深度学习TensorFlow神经网络基础概括

    Python深度学习TensorFlow神经网络基础概括

    这篇文章主要为大家介绍了Python深度学习中TensorFlow神经网络基础概括,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-10-10
  • 浅谈Python在pycharm中的调试(debug)

    浅谈Python在pycharm中的调试(debug)

    今天小编就为大家分享一篇浅谈Python在pycharm中的调试(debug),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python实现简单购物商城

    python实现简单购物商城

    这篇文章主要为大家详细介绍了python实现简单购物商城的相关资料,具有实用性和一定的参考价值,感兴趣的朋友可以参考一下
    2016-05-05
  • python中异常报错处理方法汇总

    python中异常报错处理方法汇总

    之前在学习python的时候有整理过python异常处理的文章,不够简单也不够完整,所以决定再整理一篇,算做补充,大家学习一下,就可以自己思考解决方法了,希望对大家能够有所帮助
    2016-11-11
  • pandas dataframe中双中括号和单中括号的区别及说明

    pandas dataframe中双中括号和单中括号的区别及说明

    这篇文章主要介绍了pandas dataframe中双中括号和单中括号的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Python中利用ItsDangerous快捷实现数据加密

    Python中利用ItsDangerous快捷实现数据加密

    这篇文章主要介绍了Python中利用ItsDangerous快捷实现数据加密,通过使用Python库ItsDangerous,我们就可以高效快捷地完成数据加密/解密的过程,本文结合实例代码给大家讲解的非常详细,需要的朋友可以参考下
    2022-11-11
  • Python中list列表添加元素的3种方法总结

    Python中list列表添加元素的3种方法总结

    这篇文章主要介绍了Python中list列表添加元素的3种方法总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Python调用飞书发送消息的示例

    Python调用飞书发送消息的示例

    这篇文章主要介绍了Python调用飞书发送消息的示例,帮助大家更好的理解和学习python编程语言的用法,感兴趣的朋友可以了解下
    2020-11-11

最新评论