多测师肖sir_高级金牌讲师___python之json模块

python之json模块
python标准模块之json

定义:json (java script object notation)是轻量级的文本数据交换格式

案例json:

json和字典 一样

一、json模块可以实现json数据的序列化和反序列化

(1)序列化:将可存放在内存中的python 对象转换成可物理存储和传递的形式

实现方法:load() loads()

(2)反序列化:将可物理存储和传递的json数据形式转换为在内存中表示的python对象

实现方法:dump() dumps()

查看 dump用法:ctrl+点击dump

===================================================

1、由python对象格式化成为json()dumps

案例1:将字典格式转化字符

j={‘name’:‘zs’,‘age’:18,“no”:[“123”,“456”],“sex”:“男”}
print(j)#{‘name’: ‘zs’, ‘age’: 18, ‘no’: [‘123’, ‘456’], ‘sex’: ‘男’}
print(type(j))#
jsonzfc=json.dumps(j,ensure_ascii=False)# 将一个字典转换称json
print(jsonzfc) #{“name”: “zs”, “age”: 18, “no”: [“123”, “456”], “sex”: “男”}
print(type(jsonzfc)) #

备注:

1、python中的字典是单引号,字符是双引号

2、字典是大写True, 字符是小写

================================================

dump 方法:
定义:往文件中添加字符json
案例1:
j={‘name’:‘zs’,‘age’:18,“no”:[“123”,“456”],“sex”:“男”,“isonly”:True}
print(j)
print(type(j))
jsonzfc=json.dumps(j,ensure_ascii=False)# 将一个字典转换称json
print(jsonzfc)
print(type(jsonzfc))
#dumps
json.dump(j,open(“data.json”,“a”))
===================================================·

indent=4 indent 分隔符 ,排序

案例3:

结果:

{
“name”: “zs”,
“age”: 18,
“no”: [
“123”,
“456”
],
“sex”: “男”,
“isonly”: true
}

案例2:

================================

对json中字符 排序

sort_keys=True 排序;

=================================================================

三、 json string 转化称python对象

(1)字符类型转换成字典

import _json
json1=‘{“age”: 18, “isonly”: true, “name”: “zs”, “no”: [“123”, “456”], “sex”: “男”}’
print(type(json1))
jsgs=json.loads(json1)
print(type(jsgs)) #

(2)字符类型转换成元组

案例:

json2=‘[“a”,“b” ,{“no”: 123, “sex”: “男”}]’
print(type(json2))#
listgs=json.loads(json2)
print(type(listgs)) #

============================================

四、load文件转换成 对象方式

1、创建json格式:

{“age”: 18, “isonly”: true, “name”: “zs”, “no”: [“123”, “456”], “sex”: “男”}

2、将 文件中的json通过load转换字典

import json
dxwj=json.load(open(‘aa.json’,‘r’,encoding=“utf-8”))
print(type(dxwj))
print(dxwj)

你可能感兴趣的:(python,python)