Python 把u放在文本前面

Python 把u放在文本前面,python,non-ascii-characters,Python,Non Ascii Characters,我尝试用ascii字符替换非ascii字符 它运行良好: #!/usr/bin/env python # -*- coding: utf-8 -*- from unidecode import unidecode in_text = u"protégé" out = unidecode(in_text) print out 结果:protA(c)gA(c) 在这种情况下,我必须手动复制文本 问题出在文本前面的“u”中 我想自动阅读。大概是这样的: #!/usr/b

我尝试用ascii字符替换非ascii字符

它运行良好:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from unidecode import unidecode

in_text = u"protégé"

out = unidecode(in_text)

print out
结果:protA(c)gA(c)

在这种情况下,我必须手动复制文本

问题出在文本前面的“u”中

我想自动阅读。大概是这样的:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from unidecode import unidecode

with open("C:\Users\B\Desktop\\0.txt", "r") as f:
    in_text = f.read()
    
char_text = u(in_text)

out = unidecode(char_text)
python 2.7

仅修复python2:

from unidecode import unidecode
import io

with io.open("C:\Users\B\Desktop\\0.txt", "r", encoding="utf-8") as file:
    for line in file:
        char_text = u"{}".format(line)
        out = unidecode(char_text)
    print(out)

显示错误:Traceback(最近一次调用last):文件“C:/Users/Big Daddy/PycharmProjects/untitled/remove non-ascii.py”,第7行,在char_text=u“{}”中。格式(行)UnicodeDecodeError:“ascii”编解码器无法解码第4位的字节0xc3:序号不在范围内(128)我添加了编码=“utf-8”在我对上面的代码进行编辑后,再次尝试使用它。不同的错误:第3行,以open(“C:\Users\Big Daddy\Desktop\\0.txt”,“r”,encoding=“utf-8”)作为文件:TypeError:“encoding”是此函数的无效关键字参数。您使用的是什么版本的python?我使用的是python 2.7