Python中文字符输出乱码的问题

我有一个文本

 你好,中国

然后使用Python发现是乱码

f = open('file.txt')
print(f.readlines())

结果如下:

['\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\xad\xe5\x9b\xbd\n']

怎么让程序自动打印出中文结果?

5个回答

这个乱码的原因,无外乎,文本的编码,读取打开的编码,控制台的输出编码,不一致,造成的,建议如下:
保证文本的编码为UTF-8,然后:
1,设置控制台编码为UTF-8
2, open('file.txt',encoding='utf-8')

你需要你的控制台支持中文,这样,就可以直接print来打印

因为readlins()函数返回的是一个list,要想显示,就要指定list的角标,print里改成f.readlines()[0]应该就好了

用 print f.readlines()[0] 最方便

import urllib
然后 urllib.quote('zhongwen')

ludengji
ludengji 回复AlexanderYau: quote方法里把你readlines的东西丢进去。。。
3 年多之前 回复
u012440391
AlexanderYau 具体怎么使用?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!