最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python的json包在哪,怎么用

    正文概述    2020-07-14   237

    python的json包在哪,怎么用

    JSON是一种独立于语言的文本格式,用于数据交换,可以在不同语言间交换数据。

    在高级版本的Python里自带json模块包,使用import json直接导入模块。

    JSON文本以“键/值”对形式定义,Python里的json模块主要用于“Python数据与JSON格式的数据间相互转换”。

    JSON的数据类型:数字(整数或浮点数),字符串(“  ”),逻辑值(True/False),数组([  ]),对象({  }),null。

    json模块里常用的四个方法是dump,dumps,load,loads。详细的方法使用细节参考Python自带帮助文件help(json.dump)。

    Encode编码为json对象:

    json.dumps

    Pyhton的Json模块提供了把内存中的对象序列化的方法。

    dump的功能就是把Python对象encode为json对象,一个编码过程。 注意json模块提供了json.dumps和json.dump方法,区别是dump直接到文件,而dumps到一个字符串,这里的s可以理解为string。

    #dumps方法
     
    import json
    data = [{ 'a':'A', 'b':(2, 4), 'c':3.0 }]
    print('DATA:', repr(data), type(data)) 
     
    data_string = json.dumps(data)
    print('JSON:', data_string, type(data_string))

    json.dump

    不仅可以把Python对象编码为string,还可以写入文件。

    但是不能把Python对象直接写入文件,这样会报错TypeError: expected a string or other character buffer object,需要将其序列化之后才可以写入文件。

    #dump方法
    import json
    data = [ { 'a':'A', 'b':(2, 4), 'c':3.0 } ]
     
    with open('output.json','w') as fp:
        json.dump(data,fp)

    Decode解码为Python对象:

    json.loads

    以上给出了Python内置对象dump为json对象的操作,反过来,那如何从json对象decode解码为Python可以识别的对象呢?

    用loads方法,当然这个是基于string的;如果是文件,可以用json.load方法。

    #loads方法
    decoded_json = json.loads(data_string)
    print(type(decoded_json),decoded_json)

    json.load

    #load方法
    with open('output.json') as fp:
        print(type(fp))
        
        loaded_json = json.load(fp)
        print(type(loaded_json),loaded_json)

    Python里open(‘文件路径’,‘读写模式’)内建函数,作用是打开文件。

    利用with代码块操作,便于管理上下文,当with代码块执行完时,内容会自动关闭并释放文件资源。


    起源地下载网 » python的json包在哪,怎么用

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元