關於使用json 字符串轉換爲字典問題

問題背景:python

  '{"backend": "www.baidu.org", "record": {"server": "10.0.0.9", "weight":20, "maxconn": 30}}'json

  使用raw_input()獲取一個輸入的字典參數,獲得的是一個字符串,因此須要該字符串從新轉換爲字典fetch

  看到這裏想到就是json轉換的問題:spa

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 import json
 5 __author__ = 'jonsea'
 6 
 7 if __name__ == '__main__':
 8     op1 = raw_input('一、查找,二、添加,三、刪除\n請輸入須要操做的編號:')
 9     data = raw_input("請輸入內容:")
10     
11     if op1 == '1':
12         fetch_str(data)
13     else:
14         dict_data = json.loads(data)
15         print dict_data

  在鍵入參數{'backend': 'www.baidu.org', 'record': {'server': '10.0.0.9', 'weight': 20, 'maxconn': 30}}後,可是運行結果報錯code

  

  看到這裏,檢查了一下代碼沒問題,那就是輸入問題了,輸入字典格式沒問題,對比了一下官方文檔server

1 import json
2 json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
3 ---------------------------------------------------------
4 輸出:[u'foo', {u'bar': [u'baz', None, 1.0, 2]}]

  後來查詢了下才知道:blog

    單引號和雙引號仍是有區別的,不一樣於以前認爲二者都差很少。utf-8

    json標準格式要求必須 只能使用雙引號做爲鍵 或者 值的邊界符號,不能使用單引號,並且「鍵」必須使用邊界符(雙引號)文檔

    新問題:當數據量大時,難道只能用replace處理,再操做字符串

相關文章
相關標籤/搜索