gpt4 book ai didi

python - 为什么在 Python 中打印 unicode 字符串列表时得到 u"xyz"格式?

转载 作者:太空宇宙 更新时间:2023-11-04 07:25:56 25 4
gpt4 key购买 nike

请注意以下行为:

a = u"foo"
b = u"b\xe1r" # \xe1 is an 'a' with an accent
s = [a, b]

print a, b
print s
for x in s: print x,

结果是:

foo bár
[u'foo', u'b\xe1r']
foo bár

当我只打印变量 ab 中的两个值时,我得到了我所期望的;当我将字符串值放入列表并打印时,我得到了不需要的 u"xyz" 形式;最后,当我循环打印列表中的值时,我又得到了第一种形式。有人可以解释一下这种看似奇怪的行为吗?我知道这可能是有充分理由的。

最佳答案

当你打印一个列表时,你会得到每个元素的 repr(),列表并不是真的要打印,所以 python 会尝试打印代表它的结构的东西。

如果您想以任何特定方式对其进行格式化,请明确说明您希望它如何格式化,或者重写它的 __repr__ 方法。

关于python - 为什么在 Python 中打印 unicode 字符串列表时得到 u"xyz"格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2180929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com