我是Python的初学者(我使用的是3.4)。这是我代码的相关部分。在
fileObject = open("countable nouns raw.txt", "rt")
bigString = fileObject.read()
fileObject.close()
每当我试图阅读此文件时,我会得到:
^{pr2}$我一直在阅读,这似乎与我的默认编码不匹配的文本文件编码有关。我在另一篇文章中读到,你可以使用这种方法来读取具有特定编码的文件:
import codecs
f = codecs.open("file.txt", "r", "utf-8")
但你必须提前知道。问题是我不知道文本文件是如何编码的。一些帖子建议使用Chardet。我已经安装了它,但我不知道如何让它读取文本文件。在
有什么办法解决这个问题吗??在
要添加到Martijn Pieters的答案,您可能需要查看以下链接: http://osxdaily.com/2015/08/11/determine-file-type-encoding-command-line-mac-os-x/
如果你是一个Mac用户,很难弄清楚你的特定文件是用什么编码的。在
除了在使用} 工具来获取编码。在
open
时使用正确的Python方法指定编码之外,还可以尝试使用^{文件
foo.txt
包含可以使用
^{pr2}$正如使用^{} 可以看到的,它包含九个字节,每个字符有两个字节,一个换行符。在
不需要使用
codecs.open()
;这是python2的建议。在在Python 3中,
open()
接受一个encoding
参数:当然,这需要知道文件使用了什么编解码器。一般来说,Python不容易找到它;单独的文件格式可能包含编解码器信息,或者在给定的编解码器上进行了标准化,但是如果所有文件都有一个通用的文本文件,那么就必须弄清楚是什么创建了它,以及用什么编解码器来编写数据。在
相关问题 更多 >
编程相关推荐