午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    Python json模塊使用實(shí)例
    來源:易賢網(wǎng) 閱讀:857 次 日期:2015-04-14 15:17:34
    溫馨提示:易賢網(wǎng)小編為您整理了“Python json模塊使用實(shí)例”,方便廣大網(wǎng)友查閱!

    實(shí)際上JSON就是Python字典的字符串表示,但是字典作為一個(gè)復(fù)雜對(duì)象是無法直接傳遞,所以需要將其轉(zhuǎn)換成字符串形式.轉(zhuǎn)換的過程也是一種序列化過程.

    用json.dumps序列化為json字符串格式

    代碼如下:

    >>> import json

    >>> dic {'Connection': ['keep-alive'], 'Host': ['127.0.0.1:5000'], 'Cache-Control': ['max-age=0']}

    >>> jdict = json.dumps({'Connection': ['keep-alive'], 'Host': ['127.0.0.1:5000'], 'Cache-Control': ['max-age=0']})

    >>> print jdict

    {"Connection": ["keep-alive"], "Host": ["127.0.0.1:5000"], "Cache-Control": ["max-age=0"]}

    雖然dic和jdict打印的字符串是相同的,但是實(shí)際它們的類型是不一樣的.dic是字典類型,jdict是字符串類型

    代碼如下:

    <type 'dict'>

    >>> type(jdic)

    >>> type(jdict)

    <type 'str'>

    可以用json.dumps序列化列表為json字符串格式

    代碼如下:

    >>> list = [1, 4, 3, 2, 5]

    >>> jlist = json.dumps(list)

    >>> print jlist

    [1, 4, 3, 2, 5]

    list和jlist類型同樣是不一樣的

    代碼如下:

    >>> type(list)

    <type 'list'>

    >>> type(jlist)

    <type 'str'>

    json.dumps有如下多種參數(shù)

    代碼如下:

    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)

    key排序

    代碼如下:

    >>> print json.dumps({1:'a', 4:'b', 3:'c', 2:'d', 5:'f'},sort_keys=True)

    {"1": "a", "2": "d", "3": "c", "4": "b", "5": "f"}

    格式對(duì)齊

    代碼如下:

    >>> print json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4)

    {

    "4": 5,

    "6": 7

    }

    指定分隔符

    代碼如下:

    >>> json.dumps([1,2,3,{'4': 5, '6': 7}], separators=(',',':'))

    '[1,2,3,{"4":5,"6":7}]'

    用json.dump序列化到文件對(duì)象中

    代碼如下:

    >>> json.dump({'4': 5, '6': 7}, open('savejson.txt', 'w'))

    >>> print open('savejson.txt').readlines()

    ['{"4": 5, "6": 7}']

    json.dump參數(shù)和json.dumps類似

    代碼如下:

    json.dump(obj, fp, 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)

    json.loads把json字符串反序列化為python對(duì)象

    函數(shù)簽名為:

    代碼如下:

    json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

    注意這里的”s”必須是字符串,反序列化后為unicode字符

    代碼如下:

    >>> dobj = json.loads('{"name":"aaa", "age":18}')

    >>> type(dobj)

    <type 'dict'>

    >>> print dobj

    {u'age': 18, u'name': u'aaa'}

    json.load從文件中反序列化為python對(duì)象

    簽名為:

    代碼如下:

    json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

    實(shí)例:

    代碼如下:

    >>> fobj = json.load(open('savejson.txt'))

    >>> print fobj

    {u'4': 5, u'6': 7}

    >>> type(fobj)

    <type 'dict'>

    更多信息請(qǐng)查看IT技術(shù)專欄

    更多信息請(qǐng)查看腳本欄目
    易賢網(wǎng)手機(jī)網(wǎng)站地址:Python json模塊使用實(shí)例
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2025國(guó)考·省考課程試聽報(bào)名

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號(hào)
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)