請遵守以下行爲:當我在Python中打印一個unicode字符串列表時,爲什麼我會得到u「xyz」格式?
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
當我剛打印兩個值坐在變量a
和b
,我得到了我期待;當我將字符串值放在列表中並打印出來時,我得到不需要的u"xyz"
表單;最後,當我用循環打印列表中的值時,我再次獲得第一個表單。有人可以解釋這個看似奇怪的行爲嗎?我知道這可能是一個很好的理由。