• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            sunrise

            每天不斷學(xué)習(xí),才能不斷提升自己。

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              64 隨筆 :: 0 文章 :: 92 評論 :: 0 Trackbacks


              JSON
            JavaScript Object Notation的縮寫,SJON是一種輕量級的數(shù)據(jù)交換格式。易于人閱讀和編寫。同時也易于機器解析和生成。

            它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一個子集。

               JSON建構(gòu)于兩種結(jié)構(gòu):

            “名稱/值”對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),紀(jì)錄(record),結(jié)構(gòu)(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關(guān)聯(lián)數(shù)組 (associative array)。
            值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數(shù)組(array)。
            這些都是常見的數(shù)據(jù)結(jié)構(gòu)。事實上大部分現(xiàn)代計算機語言都以某種形式支持它們。這使得一種數(shù)據(jù)格式在同樣基于這些結(jié)構(gòu)的編程語言之間交換成為可能。


            1.對簡單數(shù)據(jù)類型的encoding和decoding:
            json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
             
                    print json.dumps(['foo',{'bar':('baz',None,1.0,2)}])
                    
            print json.dumps("\"foo\bar")
                    print json.dumps(u'\u1234')
                    
            print json.dumps('\\')
                    
            print json.dumps({"c":0,"b":0,"a":0},sort_keys=True)

            輸出:
            ["foo", {"bar": ["baz", null, 1.0, 2]}]
            "\"foo\bar"
            "
            \u1234"
            "\\"
            {
            "a": 0, "b": 0, "c": 0}
               compact encoding:
            #json主要是作為一種數(shù)據(jù)通信的格式存在的,而網(wǎng)絡(luò)通信是很在乎數(shù)據(jù)的大小的,無用的空格會占據(jù)很多通信帶寬,所以適當(dāng)時候也要對數(shù)據(jù)進(jìn)行壓縮。separator參數(shù)可以起到這樣的作用,該參數(shù)傳遞是一個元組,包含分割對象的字符串。
            print json.dumps([1,2,3,{'4':5,'6':7}],separators=(',',':'))
            #indent參數(shù)是縮進(jìn)的意思,它可以使得數(shù)據(jù)存儲的格式變得更加優(yōu)雅。
            print json.dumps([1,2,3,{'4':5,'6':7}],separators=(',',':'),indent = 4)
            2.decoding JSON
            json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
            print json.loads('["foo",{"bar":["baz",null,1.0,2]}]')
            print json.loads('"\\"foo\\bar"')
            輸出:
            [u'foo', {u'bar': [u'baz', None, 1.0, 2]}]
            "foar
            3.特殊JSON對象的解析
            def as_complex(dct):
            if '__complex__' in dct:
            return complex(dct['real'],dct['imag'])
            return dct

            print json.loads('{"__complex__":true,"real":1,"imag":2}',object_hook=as_complex)
            輸出:
            (1+2j)
             

            參見:http://docs.python.org/2/library/json.html
            posted on 2013-01-17 16:28 SunRise_at 閱讀(3975) 評論(0)  編輯 收藏 引用 所屬分類: 可愛的python
            日韩人妻无码一区二区三区久久99| 国产V综合V亚洲欧美久久| 久久亚洲AV成人无码电影| 一本久久免费视频| 久久综合九色综合久99| 91精品久久久久久无码| 青青国产成人久久91网| 一本久久a久久精品综合夜夜 | 亚洲欧美久久久久9999| 久久国产午夜精品一区二区三区| 久久国产免费观看精品| 国产成人久久精品二区三区| 天天综合久久久网| 99久久婷婷国产综合精品草原| 亚洲午夜久久影院| 久久最新免费视频| 2021国内久久精品| 麻豆亚洲AV永久无码精品久久| 亚洲国产另类久久久精品小说| 久久久久亚洲av无码专区导航| 久久精品中文无码资源站| 色综合色天天久久婷婷基地 | 久久99精品久久久久久不卡| 国内精品伊人久久久久影院对白 | 日产久久强奸免费的看| 久久久久久亚洲精品影院| 欧美牲交A欧牲交aⅴ久久| 亚洲精品高清久久| 国产99久久久国产精品小说| 久久综合给合久久狠狠狠97色69| 国产午夜免费高清久久影院| 久久www免费人成精品香蕉| 亚洲中文精品久久久久久不卡| av午夜福利一片免费看久久| 久久99精品国产麻豆蜜芽| 一本一道久久综合狠狠老| 国产激情久久久久影院老熟女| 久久人人添人人爽添人人片牛牛| 久久国产乱子伦精品免费强| 久久国产免费直播| 欧美久久一级内射wwwwww.|