Python 解码混合编码JSON字符串时出错
我无法用同时包含Python 解码混合编码JSON字符串时出错,python,json,unicode,decode,arabic,Python,Json,Unicode,Decode,Arabic,我无法用同时包含ascii和unicode的列表分析dict。这是我的漂亮字符串: pretty_string = """{ "list": [ "this_keyword_in_ascii", u"\u0627\u0644\u0623\u0633\u062f", # unicoded arabic u"\u0633\u0648\u0631\u064a\u0627", u"\u0627\u0
ascii
和unicode
的列表分析dict
。这是我的漂亮字符串:
pretty_string = """{
"list": [
"this_keyword_in_ascii",
u"\u0627\u0644\u0623\u0633\u062f", # unicoded arabic
u"\u0633\u0648\u0631\u064a\u0627",
u"\u0627\u0644\u0625\u0631\u0647\u0627\u0628"
]
}
"""
使用dict=cjson.decode(pretty_string)
进行解码时,我遇到以下错误:decodererror('cannot parse JSON description')
我尝试了pretty\u string.decode('unicode\u escape')
但没有成功。请帮忙 您正在尝试将包含Python字典的字符串解码为JSON。您应该对JSON使用decode
,或者对Python指令使用encode
。您没有JSON字符串。您有一个Python文本。请使用以下选项:
JSON字符串从不以u”“
开头,这是一种Python表示法。JSON也不会混合字节值和unicode值,JSON字符串总是unicode
你可能想看看是什么产生了这种结构;也许这个字符串的生成应该使用json.dumps()
而不是print
,str()
或repr()
,这是因为它是一个愚蠢的问题而被否决的吗?你真的想解码python dict吗?(或编码)好的,现在我意识到它是一个字符串,但它与JSON完全无关。
>>> literal_eval('''\
... {
... "list": [
... "this_keyword_in_ascii",
... u"\u0627\u0644\u0623\u0633\u062f", # unicoded arabic
... u"\u0633\u0648\u0631\u064a\u0627",
... u"\u0627\u0644\u0625\u0631\u0647\u0627\u0628"
... ]
... }
... ''')
{'list': ['this_keyword_in_ascii', u'\u0627\u0644\u0623\u0633\u062f', u'\u0633\u0648\u0631\u064a\u0627', u'\u0627\u0644\u0625\u0631\u0647\u0627\u0628']}