eval(字符串) ——去掉字符串引号获取引号中表达式的结果
json1.json数据 ————json数据格式
json数据格式的要求:1.一个json有且只有一个数据,唯一的这个数据必须是json支持的数据类型的数据
json支持的数据类型有哪些:
数字 —— 和数学表示数字的方式一样,列如:189,2.334,-23,3e4
字符串 —— 必须是双引号引起来的数据,例如“abc”
布尔 —— 只有true 和false两个值
数组 —— 相当于python的列表,[元素1,元素2,元素3…]
字典 —— 相当于python的字典,但键只能是字符串,并且双引号
空值 —— null
2.json数据和python数据的相互转换
python中有一个json模块,专门提供json相关函数
1)json转python(json反序列化)
a.转换原则
json ——————————-> python
数字 —— int,float
字符串 —— str,存在将“”专换成‘’的现象
布尔 —— true -> True, flase -> Flase
数组 —— list
字典 —— dict
空值 —— null —>None
b.转换工具:json模块中的loads函数
loads(json格式字符串) ——>将指定的json数据转换成对应的Python数据
注意:json格式字符串 ————指的时候字符串是一个合法的json数据的字符
from json import loads result = loads(str(100)) print(result,type(result)) # 100# result = loads("'abc'") # 报错 result = loads('"abc"') print(result,type(result)) # abc
2)python转json(json序列化)
a.转换原则
与以上相反
b.转换工具 ———— json模块中的的dumps函数
dumps(python数据) --> 将指定的Python数据转换成对应的json格式字符串
from json import dumps
result = dumps(100)
print(result, type(result))
result = dumps('abc')
print(result, type(result))
result = dumps([10, '阿酱', True, None])
print(result, type(result))
result = dumps({'a': 10, '❀': 20})
print(result,type(result))



