簡體   English   中英

如何使Python 2.x Unicode字符串不打印為u'string'?

[英]How to make Python 2.x Unicode strings not print as u'string'?

我目前正在測試一個以字典形式返回大量JSON數據的Web服務。 這些字典的鍵和值都是unicode字符串,因此它們打印出來

{u'key1':u'value', u'key2':u'value2'}

在交互式解釋器中打印到屏幕時。

現在想象一下,這是一個3級深度,40元素的字典。 所有這些u字符都會使顯示屏混亂,因此很難一目了然地看出實際數據究竟是什么。 即使使用pprint

有沒有辦法告訴解釋器我不關心普通字符串和unicode字符串之間的區別? 我不需要或想要

我發現的唯一可能有幫助的是PYTHONIOENCODING環境變量。 不幸的是,將它設置為'ascii'或'latin-1'並不會讓自己消失。

我正在使用Python 2.6,我使用常規python解釋器或iPython。

如果它是你想要的json,只需打印json

>>> import json
>>> print json.dumps({u'key1':u'value', u'key2':u'value2'}, indent=4)
{
    "key2": "value2", 
    "key1": "value"
}

為什么不創建自己的函數來打印字典? Python的默認格式可以快速,輕松地進行調試,但絕對適用於3級深度,40元素的字典。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM