strings = [word.translate(table) for word in strings]
strings
包含普通字符和unicode字符,因此当它迭代普通字符串时,我会收到错误。是否有一种简洁的方法使这段代码按预期工作,或者我必须编写一个函数来检查和执行正确的str.translate()?
答案 0 :(得分:1)
始终使用一种类型的字符串;如果您的str
值仅包含ASCII,只需将其转换为unicode
;将unicode
转换为unicode
是免费操作,您可以在这两种类型上使用unicode()
:
strings = [unicode(word).translate(table) for word in strings]