搜尋

首頁  >  問答  >  主體

python - 為什麼正常輸出中文沒有亂碼,zip函數之後出現中文程式設計unicode編碼的問題,我是遍歷輸出的啊。

##

阿神阿神2733 天前1010

全部回覆(1)我來回復

  • typecho

    typecho2017-06-12 09:25:09

    因為zip將每兩個獨立的字串, 組合成了一個元組, 而中文在元組,列表等等這些數據結構中, 是按照unicode或者十六進制存儲, 所以你看到的會是這個結果, 這些不影響使用, 也不是亂碼, 因為直接遍歷出來, 將元素單獨打印出來, 就能看到人可識別的內容了, 可以用下面的代碼幫助理解:

    # coding: utf8
    a = u'你好'
    print a          # 独立打印
    
    s = []           # 创建列表, 并存入列表
    s.append(a)   
    print s          # 将整个列表打印, 看到unicode编码存储的内容
    print s[0]       # 将元素单独打印, 看到正常的内容
    
    #### 输出  ###
    你好
    [u'\u4f60\u597d']
    你好

    回覆
    0
  • 取消回覆