我正在尝试将á
替换为a
,其中包含以下内容:
i.string.replace_with(i.string.replace(u'\xc3', 'a'))
但它并没有取代任何东西。但是,如果我使用
i.string.replace_with(i.string.replace(u'\xed', 'i'))
它会将í
替换为i
为什么á
没有被替换,í
是?当我打开/保存文件时,我没有指定使用哪种编码。这是我的问题的原因(这是我怎么能取代í但不是á然后)?
我是python的新手,我还在学习。
答案 0 :(得分:1)
您需要使用一些编码,您可以像这样打开文件;
import re, codecs
with codecs.open("filename", 'r', 'utf-8') as f:
for line in f:
print line
f.close()
它会以u'flag返回标记。也可能需要使用latin-1编码,编码('latin-1');
import re, codecs
with codecs.open("filename", encoding="latin-1") as f:
for line in f:
print line
f.close()
答案 1 :(得分:1)
我认为问题出在您正在寻找的代码中。在unicode中á
似乎是\xE1
而不是\xC3
。
试一试,让我知道是否有效。
你可以使用像这样的转换器检查一些其他符号: http://rishida.net/tools/conversion/