python json字符串和dict的转化

Python中,json数据与dict字典以及对象之间的转化,是必不可少的操作。

Python中自带json库。通过import json导入。

在json模块有如下方法,

  1. loads():将json数据转化成dict数据
  2. dumps():将dict数据转化成json数据
  3. load():读取json文件数据,转成dict数据
  4. dump():将dict数据转化成json数据后写入json文件

dump()将dict转成json字符串,然后存入文件中;而dumps()直接将字典dict转为json字符串


dict字典转json字符串:

import json

def dict_to_json():
    dict = {}
    dict['name'] = 'many'
    dict['age'] = 10
    dict['sex'] = 'male'
    print type(dict),dict  
    # 输出:<type 'dict'> {'age': 10, 'name': 'many', 'sex': 'male'}
    json_data = json.dumps(dict)
    print type(json_data),json_data 
    # 输出:<type 'str'> {"age": 10, "name": "many", "sex": "male"}


if __name__ == '__main__':
    dict_to_json()

json字符串转成dict字典

import json

def json_to_dict():
    j = '{"id": "007", "name": "007", "age": 28, "sex": "male", "phone": "13000000000", "email": "[email protected]"}'
    dict = json.loads(j)
    print type(dict),dict 
#<type 'dict'> {u'name': u'007', u'age': 28, u'sex': u'male', u'phone': u'13000000000', u'email': u'[email protected]', u'id': u'007'}

if __name__ == '__main__':
    json_to_dict()

 json的load()dump()方法的使用:

dump()方法将dict数据转化成json数据后写入json文件

import json

def dict_to_json_write_file():
    dict = {}
    dict['name'] = 'many'
    dict['age'] = 10
    dict['sex'] = 'male'
    print(dict)  # 输出:{'age': 10, 'name': 'many', 'sex': 'male'}
    with open('1.json', 'w') as f:
        json.dump(dict, f)  # 会在目录下生成一个1.json的文件,文件内容是dict数据转成的json字符串


if __name__ == '__main__':
    dict_to_json_write_file()

load()读取json文件数据,转成dict数据

import json

def json_file_to_dict():
    with open('1.json', 'r') as f:
        dict = json.load(f)
        print(dict)  # {'name': 'many', 'age': 10, 'sex': 'male'}


if __name__ == '__main__':
    json_file_to_dict()

猜你喜欢

转载自blog.csdn.net/xieganyu3460/article/details/81712622