数据存储
数据存储 处理JSON格式的数据 JSON字符串与字典相互转换 将字典转换为JSON字符串需要使用json模块的dumps函数。将JSON字符串转换为字典有下面两种方式 (1)使用json模块的loads函数,该函数通过参数传入JSON字符串,然后返回与该JSON字符串对应的字典(推荐) (2)使用eval函数将字典转换为JSON字符串(不建议用这种方式) 尽管eval函数与loads函数都可与将JSON字符串转换为字典,但建议使用loads函数进行转换,因为eval函数可以执行任何python代码,如果JSON字符串中包含了有害的pthon代码, 执行JSON字符串可能会带来风险 本例将名为data的字典转换为JSON字符串,并使用loads函数将JSON字符串转换为字典。最后从products.json文件中读取JSON字符串转换为字典 cat >>/root/products.json<<EOF data={ 'name':'Bill', 'company':'Microsoft', 'age':'30' } EOF import json #定义一个字典 data={ 'name':'Bill', 'company':'Microsoft', 'age':'30' } # 将字典转换为json字符串 jsonStr=json.dumps(data) #输出jsonStr变量类型 print(type(jsonStr)) #输出json字符串 print(jsonStr) #将json字符串转换为字典 data=json.loads(jsonStr) #输出data变量类型 print(type(data)) #输出字典 print(data) #打开products.json文件 f=open('/root/products.json','r',encoding='utf-8') #读取products.json文件中的所有内容 jsonStr=f.read() #使用loads函数将JSON字符串转换为字典 json1=json.loads(jsonStr) #输出jjson1变量类型 print(type(jsonStr)) #输出json字符串 print(jsonStr) E:\python\python.exe E:/test_code/tes5.py <class 'str'> {"name": "Bill", "company": "Microsoft", "age": "30"} <class 'dict'> {'name': 'Bill', 'company': 'Microsoft', 'age': '30'} Traceback (most recent call last): File "E:/test_code/tes5.py", line 24, in <module> f=open('/root/products.json','r',encoding='utf-8') FileNotFoundError: [Errno 2] No such file or directory: '/root/products.json' 没找到文件,连接linux操作实在太费劲了,不是这个错就是那个错,但是就是这样转换的