在Python中从txt文件读取意外的希伯来语字符

在Python中从txt文件读取意外的希伯来语字符,python,utf-8,Python,Utf 8,当我试图从txt文件中读取列表时,出现了一个奇怪的错误。它看起来像是由六个希伯来文字符组成的系列。我读过关于Bush隐藏事实错误的文章,但是在open()行将编码设置为utf-8并没有解决我的问题 # -*- coding: utf-8 g = open("list.txt", "r") cnt = g.read() print "%s" % cnt g.close() txt文件的内容,由从MySQL db读取的PHP脚本生成,其内容如下: cnt = [('big', '33.333.33

当我试图从txt文件中读取列表时,出现了一个奇怪的错误。它看起来像是由六个希伯来文字符组成的系列。我读过关于Bush隐藏事实错误的文章,但是在open()行将编码设置为utf-8并没有解决我的问题

# -*- coding: utf-8
g = open("list.txt", "r")
cnt = g.read()
print "%s" % cnt
g.close()
txt文件的内容,由从MySQL db读取的PHP脚本生成,其内容如下:

cnt = [('big', '33.333.33.33'), ('human', '33.333.33.33'), ('blue-eyes', '44.444.44.44')]
错误图片:

如果从txt文件复制列表的一个片段并将其包含在.py脚本中,则不会出现错误。但这对于我来说并不实用,因为完整列表的大小大于50MB


我真的非常感谢任何帮助。

我认为这些根本不是希伯来文字符。嗯,它们是一些类似希伯来语的“图标”。当我复制和粘贴你的代码时,我也得到了
无效语法
预期语句,在Pycharm中发现了坏字符
警告,但当我从头开始重新键入时,它工作正常。你应该试试。你用什么文本编辑器?可能值得尝试用其他方式打开该文件,因为我能想到的唯一一件事是,您的
cnt=g.read()
行前面有垃圾,不知怎么被屏蔽了。复制粘贴你的代码对我来说很好。你确定PHP脚本会生成UTF-8吗?您是否尝试过使用其他代码(例如cp1255)在Python中解码字符串?一个最小的list.txt示例help@Will我不相信问题在
.txt
文件中,它是
.py
文件中的垃圾,会导致这种语法错误。对于其他要尝试的编辑器来说,Python的IDLE可能已经安装,否则我是Emacs的粉丝(
m-x hexl mode
将有助于查看文件中是否有任何非打印字符形式的垃圾)。python脚本是否只有一个txt文件或读取任何文件的问题?