python open出来的中文使用findall后乱码

張葒兵 2017-05-22 08:39:18
我的py文件中设置了utf-8,setting中也设置了utf-8,text.txt文件的编码格式也是utf-8,为什么f.read()出来显示中文不乱码,使用findall()方法后反而乱码呢,求大神指导

# encoding:utf-8
import re
f = open('text.txt','r')
text = f.read()
f.close()
print text
content = re.findall('<title>(.*?)</title>',text)
print content

-----------------------------------------------------输出的结果--------------------------------------------------------
C:\Python27\python.exe G:/workspace/leanPython/readFile.py
<html>
<title>我的第一个Python程序</title>
</html>
['\xe6\x88\x91\xe7\x9a\x84\xe7\xac\xac\xe4\xb8\x80\xe4\xb8\xaaPython\xe7\xa8\x8b\xe5\xba\x8f']
...全文
742 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
AbnerKou 2017-08-10
  • 打赏
  • 举报
回复
#!/usr/bin/env python # encoding:utf-8 import re f = open('text.txt','r') text = f.read() f.close() print text content = re.findall('<title>(.*?)</title>',text) print content[0]
屎克螂 2017-05-24
  • 打赏
  • 举报
回复
它就是中文的,只是你放在数组里打印了, 你 print x[0] 或 print ''.join(x)
Jack-Cui 2017-05-23
  • 打赏
  • 举报
回复
read()后面decode或者encode试试呢?
sanGuo_uu 2017-05-23
  • 打赏
  • 举报
回复
zzr='\xe6\x88\x91\xe7\x9a\x84\xe7\xac\xac\xe4\xb8\x80\xe4\xb8\xaaPython\xe7\xa8\x8b\xe5\xba\x8f'

print zzr.decode('utf-8')

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧