PYTHON中將STRING轉化為DICT的方法
阿新 • • 發佈:2019-02-19
我將資料庫連線相關的一些使用者名稱/密碼/host/port等各種東西作為一個string儲存在了資料庫中,我要用MySQLdb檢查這些資料庫連線資訊是夠能正常使用,需要將資料庫資訊中的使用者名稱/密碼/host/port等資訊作為引數傳給MySQLdb.Connect()。者就需要將'{"host":"192.168.11.22", "port":3306, "user":"abc","passwd":"123", "db":"mydb", "connect_timeout":10}'”這樣的string轉化為dict。
在python中,將string轉為一個dict,我所知有如下3中方法:
1. ast.literal_eval() 這是我常用的,依賴python2.6以上,據介紹時說比直接eval更安全一些,我沒細究哈。
2. eval() 在string內容比較可控/安全的前提下,eval是不錯的方法。
3. json.loads() 用json提供的loads方法是不錯的,不過key/value中的string被轉化為了unicode哦。