JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。

1、json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)

  1. json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)
  2. json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

在json的编解码过程中,python 的原始类型与json类型会相互转换,具体的转化对照如下:

Python 编码为 JSON 类型转换对应表:

Python JSON
dict object
list, tuple array
str string
int, float, int- & float-derived Enums number
True true
False false
None null

JSON 解码为 Python 类型转换对应表:

JSON Python
object dict
array list
string str
number (int) int
number (real) float
true True
false False
null None

2、json.dump()和json.load()主要用来读写json文件函数

实例如下:

import json,time
# save data to json file
def store(data):
with open('data.json', 'w') as fw:
# 将字典转化为字符串
# json_str = json.dumps(data)
# fw.write(json_str)
# 上面两句等同于下面这句
json.dump(data,fw)
# load json data from file
def load():
with open('data.json','r') as f:
data = json.load(f)
return data if __name__ == "__main__":
json_data = '{"login":[{"username":"aa","password":"001"},{"username":"bb","password":"002"}],"register":[{"username":"cc","password":"003"},{"username":"dd","password":"004"}]}'
# 函数是将json格式数据转换为字典
data = json.loads(json_data)
store(data) data = load()
print(data)

输出

{'login': [{'username': 'aa', 'password': ''}, {'username': 'bb', 'password': ''}], 'register': [{'username': 'cc', 'password': ''}, {'username': 'dd', 'password': ''}]}

总结:

不带s的用于操作文件,带s的用于数据类型的转换。

最新文章

  1. C#:向exe传值
  2. Atitit atiuse软件系列
  3. 【criteria CascadeType】级联的不同情况
  4. Redundant Paths-POJ3177(并查集+双连通分量)
  5. mysql中整数类型后面的数字,是不是指定这个字段的长度?比如int(11),11代表11个字节吗?
  6. Cows - POJ 3348(凸包求面积)
  7. 使用BSD socket编写Windows版的网络程序
  8. 使用ToUpperInvariant避免使用ToUpper
  9. poj 1401---求N!末尾0的个数,2的个数一定比5多,观察得来,0的产生即为2*5,去找这个阶乘一行里面5的个数即可
  10. codeigniter IE浏览器下无法登录的解决的方法
  11. linux通过建模工具Umbrello
  12. 【转】Grub Rescue修复方法
  13. kubernetes1.14.0部署
  14. 基于IPV6数据包分析(GNS3)
  15. html入门第二天。
  16. rem 原理与简介
  17. python之路-字符串
  18. Python Async/Await入门指南
  19. [CodeForces - 463B] Caisa and Pylons
  20. Codeforces Round #277.5 (Div. 2)C——Given Length and Sum of Digits...

热门文章

  1. msyql -3m架构详解
  2. nmap扫描验证多种漏洞
  3. Oracle之用户和表空间
  4. K8S学习笔记之修改K8S的api-server证书
  5. 模拟window系统的“回收站”
  6. mariadb的flashback到底怎么样???防误删可以,但算不上真正的闪回--再看mariadb 10.3的System-Versioned Tables
  7. SaaS公司融资的「22条军规 」(转)
  8. Zookeeper .Net客户端代码
  9. UI自动化(二)css选择器
  10. 【4opencv】CLR基本原理和如何运用于GOCW