我是一个Python初学者,遇到了一个utf-8编码问题。
我有一个utf-8字符串,并且想要用ASCII替换所有的德语umlaut(在德语中,u-umlaut 'ü' 可以被重写为“ue”)。
u-umlaut具有Unicode编码点252,所以我尝试了以下代码:
>>> str = unichr(252) + 'ber'
>>> print repr(str)
u'\xfcber'
>>> print repr(str).replace(unichr(252), 'ue')
u'\xfcber'
我原本期望最后的字符串是u'ueber'
。
我的最终目标是将文件中所有的u-umlauts替换成'ue':
import sys
import codecs
f = codecs.open(sys.argv[1],encoding='utf-8')
for line in f:
print repr(line).replace(unichr(252), 'ue')
感谢您的帮助!(我正在使用Python 2.3版本。)