python2中json讀取與寫入中文亂碼問題

2021-09-05 10:54:50 字數 843 閱讀 6462

需要通過python將mysql5.7資料庫中乙個字段(json型別)的值查出來並進行修改

將資料庫查出來的字串轉為物件

get_sql = "select column_info from dw_table_config where table_name = '%s'" % dw_table

cmd = 'mysql %s -n -e "%s"' % (dms.ods_db_link, get_sql)

result = os.popen(cmd)

dw_columns = json.loads(result.readlines()[0].strip('\n'))

result.close()

將dw_columns修改後再寫回資料庫

update_sql = "update dw_table_config set column_info = '%s' where table_name = '%s'" % (json.dumps(dw_columns, ensure_ascii=false).encode("utf-8").replace('"', '\\"'), dw_table)

cmd = 'mysql %s -n -e "%s"' % (dms.ods_db_link, update_sql)

os.system(cmd)

讀取時候正常讀取即可,寫會的時候需要在dumps時候增加如下引數

ensure_ascii=false
之後將dump的結果再進行encode處理

encode("utf-8")

json轉換為csv 基於python2

非常實用的工具,可以很方便得將json檔案轉換為csv檔案,然後使用excel軟體開啟檢視。使用時只需要將要讀取的json檔名更改為你需要的檔名即可 注 請將json檔案放在和本檔案同一路徑下,否則需要使用絕對路徑 出處 coding utf 8 import json,csv import sys...

python2中編碼問題

1.python 3 中 str 與 bytes 在 python3中,字串有兩種型別 str和bytes。在 python 3 中你定義的所有字串,都是 unicode string型別,使用 type 和 isinstance 可以判別 python3 str obj 你好 type str o...

Python2與Python3中的list異同

這次僅僅從自己實踐經驗上來做一次簡單的小結,python 2與python 3中的list在使用中的異同點做乙個簡單的總結。跟隨技術的腳步,我自己的機器上安裝的是python3,前陣子找到的最新版本。但是,現在很多地方大量用到的版本其實是2.x。我自己的python學習最基礎只是的掌握其實是從pyt...