文章目录

  • 引言
  • 1.json.dumps()与json.dump()
  • 2.json.loads()与json.load()
  • 3.json.dumps参数介绍
  • 4.将JSON对象转换成DataFrame或者其他数据结构
  • 5.总结

引言

  JSON(JavaScript Object Notation)模块是一种轻量级的文本数据交换格式,可以理解为键值对的集合,JSON是存储和交换文本信息的语法。下面展示一个JSON实例。

{"id": 29738501,"name": "跟着你到天边 钢琴版","duration": 174001,"hearTime": 0,"commentThreadId": "R_SO_4_29738501","score": 40,  # 得分"mvid": 0,"hMusic": null,"disc": "","fee": 0,"no": 1,"rtUrl": null,"ringtone": null,"rtUrls": [],"rurl": null,"status": 0,"ftype": 0,"mp3Url": "http://m2.music.126.net/vrVa20wHs8iIe0G8Oe7I9Q==/3222668581877701.mp3","audition": null,"playedNum": 0,"copyrightId": 0,"rtype": 0,"crbt": null,"popularity": 40,    # 流行度"dayPlays": 0,"alias": [],"copyFrom": "","position": 1,"starred": false,   # 是否有被加星"starredNum": 0"artists": [{"img1v1Url": "http://p1.music.126.net/6y-UleORITEDbvrOLV0Q8A==/5639395138885805.jpg","name": "群星","briefDesc": "","albumSize": 0,"img1v1Id": 0,"musicSize": 0,"alias": [],"picId": 0,"picUrl": "http://p1.music.126.net/6y-UleORITEDbvrOLV0Q8A==/5639395138885805.jpg","trans": "","id": 122455}],"artist": {"img1v1Url": "http://p1.music.126.net/6y-UleORITEDbvrOLV0Q8A==/5639395138885805.jpg","name": "","briefDesc": "","albumSize": 0,"img1v1Id": 0,"musicSize": 0,"alias": [],"picId": 0,"picUrl": "http://p1.music.126.net/6y-UleORITEDbvrOLV0Q8A==/5639395138885805.jpg","trans": "","id": 0}}
}

python中可以使用json模块对JSON数据进行编码与解码,分别是dumps()、dump()、loads()函数、load()函数

1.json.dumps()与json.dump()

  json.dumps()函数将python对象编码成JSON字符串。json.dump()函数将python对象编码成JSON字符串并写入到文件中。

import jsondata = [{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}]data2 = json.dumps(data)
print(data2)
print(type(data2))
[{"a": 1, "b": 2, "c": 3, "d": 4, "e": 5}]
<class 'str'>
import jsondata = [{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}]
with open('f.json', 'w') as f:data2 = json.dump(data, f)

会生成f.json文件

2.json.loads()与json.load()

  json.loads()函数将已编码的JSON字符串解码成python对象。json.load()函数将JSON数据解码成python对象

import jsondata = [{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}]data2 = json.dumps(data)
print(type(data2))
data3 = json.loads(data2)
print(type(data3))
<class 'str'>
<class 'list'>
import jsonwith open('f.json','r') as f:print(type(f))data = json.load(f)print(data)print(type(data))
<class '_io.TextIOWrapper'>
[{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}]
<class 'list'>

3.json.dumps参数介绍

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)

详细介绍见该网址

4.将JSON对象转换成DataFrame或者其他数据结构

  将字典构成的列表传入到DataFrame中来构造函数,并选出数据字段的子集。


  pd.read_json可以自动将JSON数据集按照指定次序转换为Series或者DataFrame

  从pandas中将数据导出为JSON格式,to_json方法

5.总结

  如果你要处理的是文件而不是字符串,使用 json.dump() 和 json.load() 来编码和解码JSON数据;反之亦然


如果对您有帮助,麻烦点赞关注,这真的对我很重要!!!如果需要互关,请评论留言!


python—json模块的编码与解码相关推荐

  1. Python json模块 - Python零基础入门教程

    目录 一.前言 二.python json 模块常用函数 三.json 转 Python 字典 dict 四.Python 字典 dict 转 json 五.关于 json.dump 和 json.l ...

  2. python中的URL编码和解码

    python中的URL编码和解码:test.py 1 # 引入urllib的request模块 2 import urllib.request 3 4 url = 'https://www.douba ...

  3. python url解码_对python中url参数编码与解码的实例详解

    一.简介 在python中url,对于中文等非ascii码字符,需要进行参数的编码与解码. 二.关键代码 1.url编码 对字符串编码用urllib.parse包下的quote(string, saf ...

  4. 二十六、python中字符串的编码与解码,utf-8编码与解码,gbk编码与解码

    在python中,我们经常会使用到字符串的编码与解码,推荐你在写代码的过程中都用utf-8编码解码 1.utf-8编码用函数encode,例子,编码英文跟数字的时候,他只是在前面多了个b,编码中文的时 ...

  5. python json模块有什么用_Python中json模块与jsonpath模块的区别是什么

    Python中json模块与jsonpath模块的区别是什么 发布时间:2021-02-02 11:15:52 来源:亿速云 阅读:94 作者:小新 这篇文章主要介绍了Python中json模块与js ...

  6. python json模块详解_深入解析Python编程中JSON模块的使用

    JSON编码支持的基本数据类型为 None , bool , int , float 和 str , 以及包含这些类型数据的lists,tuples和dictionaries. 对于dictionar ...

  7. python json模块的内部实现_python – 如何使用JSON模块进行漂亮打印时实现自定义缩进?...

    所以我使用Python 2.7,使用json模块编码以下数据结构: 'layer1': { 'layer2': { 'layer3_1': [ long_list_of_stuff ], 'layer ...

  8. python json模块有什么用_Python的json模块应用总结

    JSON(Java Script Object Notation):一种轻量级数据交互格式,相对于XML而言更简单,也易于阅读和编写,机器也方便解析和生成,Json是JavaScript中的一个子集. ...

  9. python json模块有什么用_Python的json模块及使用

    import json # json 是 js 下的内容各个语言交流的数据交换方式 # 字典 dict1 = {'name': 'joe', 'age': '18'} data = json.dump ...

  10. python json模块使用详情

    python其他知识目录 #json.数据交换用到json文件.json是特殊的字符串.访问网站,返回的就是json 1.json简介: 定义:JSON(JavaScript Object Notat ...

最新文章

  1. 牛客网 华为机试题 数据重复的筛选问题记录
  2. C++ delete 和 delete []的区别
  3. 基于python的scrapy爬虫抓取京东商品信息
  4. 【无标题】12.04 Serverless Meetup 深圳站 | Call 你来参加
  5. [云炬创业学笔记]第二章决定成为创业者测试8
  6. sql语句字符串处理大全
  7. 有序数组求和问题(Two Sum II - Input array is sorted)
  8. .NET Core容器化开发系列(一)——Docker里面跑个.NET Core
  9. Java的20年:重大事件的时间表
  10. Candidate sampling:NCE loss和negative sample
  11. python递归函数详解-讲解Python中的递归函数
  12. mysql 字符串 底层_Mysql 的索引底层原理及数据结构详解
  13. 实现添加商品信息功能
  14. 学号程序编辑 c语言,C语言程序设计实习报告 行编辑器 学生管理系统
  15. pycharm搭建spark环境
  16. Linux之Bash_Script_Program_002
  17. VMware三种工作模式
  18. WPF中直接打开网页方法总结
  19. xxx.pbtxt标签文件解析(tensorflow modles zoo)
  20. 功放的工作原理与作用

热门文章

  1. JAVA – 虚函数、抽象函数、抽象类、接口_对比C++
  2. 转载js实现打印功能
  3. VC++6.0 DDK 环境配置
  4. 著名设计师的标志(Logo)设计观
  5. .NET中利用XML来自动生成代码策略
  6. 爬虫--Scrapy-CrawlSpider基于CrawlSpide的分布式爬虫
  7. 设置应用栏(Setting Up the App Bar)
  8. Docker Swarm学习教程
  9. ubuntu 14.04中安装phpmyadmin即mysql图形管理界面
  10. 杭电 看归并排序和快速排序