Python 2.7 在数据结构中未检测到Unicode字符串
使用Python2,我无法检测我的unicode字符串是否在列表、集合或字典中被检测到 比如说 我通过迭代文件名来生成列表Python 2.7 在数据结构中未检测到Unicode字符串,python-2.7,unicode,Python 2.7,Unicode,使用Python2,我无法检测我的unicode字符串是否在列表、集合或字典中被检测到 比如说 我通过迭代文件名来生成列表 res = [] for root, dir, file in os.walk('./'): for name in file: res.append(name.replace('/', '_')) 其中一个文件名是Município 当我打印出项目时,我得到Munici\xcc\x81pio。这不是问题,但当我尝试检查Município是否在列表
res = []
for root, dir, file in os.walk('./'):
for name in file:
res.append(name.replace('/', '_'))
其中一个文件名是Município
当我打印出项目时,我得到
Munici\xcc\x81pio
。这不是问题,但当我尝试检查Município
是否在列表中时,它返回false。我检查两者是否都是unicode。这是windows吗?sys.getfilesystemencoding()
说什么?OSX。它打印出utf-8
打印报告(名称)显示什么?文件名在创建时似乎没有正确编码。name.decode('utf-8')==u“Município”
应该可以工作,但您可能需要在脚本顶部添加#coding=utf-8
(第二行,如果使用shebang)。注意不同的Unicode规范化形式: