我使用Pycharm / Intellij Idea。当我将带有变音符号的数据打印到控制台时,它会以适当的格式打印。
print u"čipsy"
čipsy
但是当我打印包含变音符号的项目列表时,它会以原始格式打印它们。
print [u"čipsy"]
[u'\u010dipsy']
是否可以让我的IDE以适当的格式打印?所以输入将是:
print [u"čipsy"]
['čipsy']
答案 0 :(得分:0)
发生这种情况的原因是当你打印字符串时,它会在内部打印str(s)。当您打印列表时,列表的str()方法在内部获取列表项的repr()并打印它。
E.g。
>>> s = u'\u010dipsy'
>>> print s
čipsy
>>> print repr(s)
u'\u010dipsy'
有关str和repr之间差异的更多信息,请参阅此问题:Difference between __str__ and __repr__ in Python
据我所知,原始问题的答案“是否可以让我的IDE以适当的格式打印它?!”可能没有,除非你继承list
并覆盖str方法以获得你想要的行为。然后,您需要确保您要打印的列表是特殊列表子类的实例。