python 读取文件乱码问题

原文地址:http://www.zisexinghen.cn/likeshare/322.html

一、问题:

python读取文件时会遇到乱码的问题

二、解决方法:

1、已utf-8格式打开文档

f = open(r'E:Pythonliaotian.txt','r',encoding='utf-8')  f.seek(0,0)  for each_line in f:      print(each_line)  f.close()

2、以二进制打开文件,然后对读取的内容进行utf-8编码

f = open(r'E:百度云同步盘云同步盘Pythonliaotian.txt','rb')  f.seek(0,0)  for each_line in f:      print(each_line.decode('utf-8'))  f.close()

三、查看文档的编码格式

1、安装chardet模块

    (1)官方地址: http://pypi.python.org/pypi/chardet

    (2)下载文件

    (3)将它解压得到其中的文件夹【chardet】将这个文件夹复制到【python安装根目录Libsite-packages】下,确保这个位置可以被python引用到。如果不能被引用到请加入环境变量。在安装完chardet模块,我就可以使用它了。

    (4)查看文档的格式

import chardet  path = r'E:Pythonliaotian.txt'  f = open(path,'rb')  data = f.read()  print(chardet.detect(data))