Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中读取带有法语字符的文件_Python_File_Python Unicode - Fatal编程技术网

在Python中读取带有法语字符的文件

在Python中读取带有法语字符的文件,python,file,python-unicode,Python,File,Python Unicode,我想阅读一个包含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

我想阅读一个包含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)

为了重现错误,我试图读取的文件只包含一个单词:“Accélération”。有没有办法做到这一点?

对于只包含“Accélération”一词的外商投资企业,utf-8编码不起作用,它返回以下错误

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 3: invalid continuation byte
正如@scirocorics所提出的,
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)

encoding='utf-8'
?如果文件是在Windows上创建的,
encoding='latin1'
可能比
encoding='utf-8'
更好地检索正确的characters@sciroccorics是的,拉丁1编码工作得很好。谢谢您!