【发布时间】:2016-05-15 18:59:30
【问题描述】:
我在尝试打印一些字符串时在 Python 中遇到了一些 Unicode 错误,我使用以下帖子中给出的答案的第二个要点中的以下代码解决了大部分错误: UnicodeEncodeError: 'charmap' codec can't encode - character maps to <undefined>, print function
# -*- coding: utf-8 -*-
import sys
print sys.stdout.encoding
print u"Stöcker".encode(sys.stdout.encoding, errors='replace')
print u"Стоескер".encode(sys.stdout.encoding, errors='replace')
但是,尝试在列表对象上使用它时出现错误。它给了我一个错误,该列表没有“编码”属性。
有人有一个干净的解决方案来解决这个问题吗?
感谢任何帮助!
【问题讨论】:
-
应用
encode()列出项目,而不是列表本身 -
请添加您获得的输出(错误文本)和您的 python 版本。在这里工作...
-
'''它给了我一个错误,列表没有属性“encode”。'''那是因为
list没有encode方法,即method on astrorunicode -
如果您选择
[1,2,3].encode(...),您希望会发生什么?编码只对字符串有意义,而不是列表。如果您想对每个元素进行编码,请执行以下操作:for i,item in enumerate(my_list): my_list[i] = item.encode(...)或使用列表理解的编码项目创建一个新列表:[item.encode(...) for item in my_list]