python的json包位置及用法总结

 更新时间:2020年06月21日 07:30:42   作者:silencement  
在本篇内容里小编给大家分享了关于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数据
dict object
list, tuple array
str, unicode string
int, long, float number
True true
False false
None null
单引号(') 双引号(")

到此这篇关于python的json包位置及用法总结的文章就介绍到这了,更多相关python的json包用法详解内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python3如何对urllib和urllib2进行重构

    Python3如何对urllib和urllib2进行重构

    这篇文章主要介绍了Python3如何对urllib和urllib2进行重构,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • python opencv旋转图片的使用方法

    python opencv旋转图片的使用方法

    在图像处理中,有的时候会有对图片进行角度旋转的处理,尤其是在计算机视觉中对于图像扩充,旋转角度扩充图片是一种常见的处理。本文就详细的介绍一下,感兴趣的可以了解一下
    2021-06-06
  • 如何用PyPy让你的Python代码运行得更快

    如何用PyPy让你的Python代码运行得更快

    这篇文章主要介绍了如何用PyPy让你的Python代码运行得更快,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • python调用ffmpeg命令行工具便捷操作视频示例实现过程

    python调用ffmpeg命令行工具便捷操作视频示例实现过程

    现在短视频很流行,有很多视频编辑软件,功能丰富,而我们需要的只是裁剪功能,而且需要用编程的方式调用,那么最合适的莫过于ffmpeg了
    2021-11-11
  • 利用Python制作一个MOOC公开课下载器

    利用Python制作一个MOOC公开课下载器

    为了帮助大家更好地在假期内卷,本文将利用Python制作一个中国大学MOOC的公开课下载器。文中的示例代码讲解详细,感兴趣的小伙伴可以学习一下
    2022-03-03
  • Python使用BeautifulSoup爬取网页数据的操作步骤

    Python使用BeautifulSoup爬取网页数据的操作步骤

    在网络时代,数据是最宝贵的资源之一,而爬虫技术就是一种获取数据的重要手段,Python 作为一门高效、易学、易用的编程语言,自然成为了爬虫技术的首选语言之一,本文将介绍如何使用 BeautifulSoup 爬取网页数据,并提供详细的代码和注释,帮助读者快速上手
    2023-11-11
  • 用Python实现一个简单的抽奖小程序

    用Python实现一个简单的抽奖小程序

    最近开始学习python相关知识,看最近有不少随机抽奖小程序,自己也做一个试试,下面这篇文章主要给大家介绍了关于如何利用Python实现一个简单的抽奖小程序的相关资料,需要的朋友可以参考下
    2023-05-05
  • Python进度条的使用

    Python进度条的使用

    在使用Python处理比较耗时操作的时候,为了便于观察处理进度,就需要通过进度条将处理情况进行可视化展示,本文主要介绍了Python进度条的使用,分享给大家,感兴趣的可以了解一下
    2021-05-05
  • 新手入门Python编程的8个实用建议

    新手入门Python编程的8个实用建议

    这篇文章主要介绍了Python编程的8个实用建议,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python对象的生命周期源码学习

    Python对象的生命周期源码学习

    这篇文章主要为大家介绍了Python对象的生命周期源码学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05

最新评论