gpt4 book ai didi

python - 读取文本文件时出现 UnicodeDecodeError

转载 作者:太空宇宙 更新时间:2023-11-03 11:49:46 24 4
gpt4 key购买 nike

我是 Python 的初学者(我使用的是 3.4)。这是我的代码的相关部分。

fileObject = open("countable nouns raw.txt", "rt")
bigString = fileObject.read()
fileObject.close()

每当我尝试读取此文件时,我都会得到:

UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 82273: character maps to <undefined>

我一直在阅读,这似乎与我的默认编码与文本文件编码不匹配有关。我在另一篇文章中读到,您可以使用此方法读取具有特定编码的文件:

import codecs
f = codecs.open("file.txt", "r", "utf-8")

但是你得提前知道。问题是我不知道文本文件是如何编码的。一些帖子建议使用 Chardet。我已经安装了它,但我不知道如何让它读取文本文件。

关于如何解决这个问题有什么想法吗??

最佳答案

不需要使用codecs.open();这是对 Python 2 的建议。

在 Python 3 中,open() 接受一个 encoding 参数:

fileObject = open("countable nouns raw.txt", "rt", encoding='utf8')

当然,这确实需要您知道该文件使用的编解码器。一般来说,Python 不容易解决这个问题;个别文件格式可能包含编解码器信息或已对给定的编解码器进行标准化,但如果您只有一个通用文本文件,则必须弄清楚是什么创建了它以及使用什么编解码器来写入数据。

关于python - 读取文本文件时出现 UnicodeDecodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30777370/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com