python - python3 上的 UnicodeDecodeError

标签 python regex utf-8 decoding

<分区>

我目前正在尝试在一个非常大的 .txt 文件(几百万行文本)上使用一些简单的正则表达式。导致问题的最简单的代码:

file = open("exampleFileName", "r")  
    for line in file:  
        pass

错误信息:

Traceback (most recent call last):
  File "example.py", line 34, in <module>
    example()
  File "example.py", line 16, in example
    for line in file:
  File "/usr/lib/python3.4/codecs.py", line 319, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xed in position 7332: invalid continuation byte

我该如何解决这个问题? utf-8 是错误的编码吗?如果是,我怎么知道哪个是正确的?

谢谢并致以最诚挚的问候!

最佳答案

它看起来像是无效的 UTF-8,您应该尝试使用 latin-1 编码来阅读。尝试

file = open('exampleFileName', 'r', encoding='latin-1') 

关于python - python3 上的 UnicodeDecodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39001641/

相关文章:

python - 我想在 Flask 中制作漂亮的 JSON 格式

python - 安装 Matplotlib 报错 : fatal error C1083

c# - 正则表达式无法处理流氓方括号

MYSQL警告无效的utf8字符串

Python C 扩展抛出段错误

python - 使用 Python 进行谷歌搜索

php - 如何在 PHP 中对 UTF-8 字符串数组进行排序?

HTML5 页面语言、方向和编码

regex - Perl 使用定界符前缀拆分正则表达式

python - mysql 中的正则表达式解析存储