簡體   English   中英

在 Python 中讀取帶有法語字符的文件

[英]Reading a file with french characters in Python

我想在 Python 中讀取一個包含法語字符的文件,例如“é”。我正在使用這些代碼行來做到這一點:

import codecs
with codecs.open(r'C:\Users\chsafouane\Desktop\saf.txt', encoding='ascii') as f:
    for line in f.readlines():
        line 

然而,我得到一個

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 3: ordinal not in range(128)

為了重現錯誤,我試圖閱讀的文件只包含一個詞:“加速”。 有沒有辦法做到這一點?

對於僅包含“加速”這個詞的 fie,utf-8 編碼不起作用並返回以下錯誤

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 3: invalid continuation byte

正如@sciroccorics 所建議的那樣, latin-1編碼效果很好並且它返回了正確的單詞。 因此,有效的代碼塊如下:

import codecs
with codecs.open(r'C:\Users\chsafouane\Desktop\saf.txt', encoding='latin1') as f:
    for line in f.readlines():
        print(line)

嘗試“cp1252”,對我來說適用於所有法語字符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM