日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决

發布時間:2023/12/20 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python json.loads json.dumps(ensure_ascii = False) 漢字亂碼問題解決
python 轉換為json時候 漢字編碼問題
2017年03月23日 18:50:04 閱讀數:5604

有這樣一個需求:

????? 需要一個json 文件 數據從數據庫里查詢出來

1.?設置文件頭

?

[python]?view plaincopy
  • #?-*-?coding:utf-8?-*-????
  • ?

    ?

    2. 連接數據庫 將數據庫連接數據庫的編碼設置為utf8 ? ?
    [python]?view plaincopy
  • db?=?MySQLdb.connect(host='數據庫,user=用戶名,passwd=密碼,db='數據庫,?init_command="set?names?utf8"?)????
  • ?

    3.? 查詢出來的數據轉化為json

    ?

    [python]?view plaincopy
  • t?=?json.dumps(r,?ensure_ascii=False)????
  • 如果 不加 ensure_ascii=False? 輸出的 t 如果有漢字的話都默認給轉換成一堆編碼 如果加上的話 就都能正常顯示變成了漢字

    ?

    ?

    不加的話: t = json.dumps(r)

    ?

    [html]?view plaincopy
  • [{"category":?{"label":?"\u65b0\u8f66"},?"title":?"\u5168\u65b0\u8d77\u4e9a\u798f\u745e\u8fea\u8def\u8bd5\u8c0d\u7167\u66dd\u5149?\u6216\u4e3a\u5b9a\u540dK3",?"url":?"http://auto.sohu.com/20120523/n343878794.shtml",?"source":?"\u641c\u72d0\u6c7d\u8f66",?"time":?1337740004,?"imgUrl":?""},?{"category":?{"label":?"\u65b0\u8f66"},?"title":?"\u65b0\u5965\u8feaQ7/Q8\u66f4\u591a\u4fe1\u606f\u66dd\u5149?\u5c06\u57fa\u4e8eMLB\u5e73\u53f0",?"url":?"http://auto.sohu.com/20120523/n343873150.shtml",?"source":?"\u641c\u72d0\u6c7d\u8f66",?"time":?1337737913,?"imgUrl":?""}]????
  • ?

    加上的話:? t = json.dumps(r, ensure_ascii=False)

    ?

    [html]?view plaincopy
  • [{"category":?{"label":?"新車"},?"title":?"全新起亞福瑞迪路試諜照曝光?或為定名K3",?"url":?"http://auto.sohu.com/20120523/n343878794.shtml",?"source":?"汽車",?"time":?1337740004,?"imgUrl":?""},?{"category":?{"label":?"新車"},?"title":?"新奧迪Q7/Q8更多信息曝光?將基于MLB平臺",?"url":?"http://auto.sohu.com/20120523/n343873150.shtml",?"source":?"汽車",?"time":?1337737913,?"imgUrl":?""}]???


  • ?

    我們在post請求數據時,響應的內容是json數據,但是返回的json數據中文顯示有問題,變成 \uXXX的形式。這是因為中文以 unicode 編碼了,而默認是以ASCII解析的,中文不在ASCII編碼中,所以無法顯示。

    這時候我們可以用?import?json 然后調用json.loads() 和json.dumps()來使中文正確顯示。 下面的代碼(data是中文不能正常顯示的json串,newjson是處理后中文正常顯示的字符串)

    ?

    [python]?view plaincopy
  • import?json??
  • myjson=json.loads(data)?#data是向?api請求的響應數據,data必須是字符串類型的??
  • newjson=json.dumps(myjson,ensure_ascii=False)???#ensure_ascii=False?就不會用?ASCII?編碼,中文就可以正常顯示了??
  • ???
  • print?newjson??
  • posted on 2018-05-15 16:11 秦瑞It行程實錄 閱讀(...) 評論(...) 編輯 收藏

    轉載于:https://www.cnblogs.com/ruiy/p/9041499.html

    總結

    以上是生活随笔為你收集整理的python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。