python 读写json

一.总览:

json文件常用于python web的前端和后端传输数据。即后端产生的数据存到某个json文件,前端需要用到这些数据的时候,通过js加载到界面中。python操纵json文件有四个函数。使用的时候需要import json

1.dumps

dumps的作用是将python中的数据结构,如list,dict等转化为json的字符串。

2.dump

dump的作用是将python中的数据结构,以json字符串的形式存到文件中。此函数和上一个函数的区别在于,dump是输出到文件。

3.loads

与dumps互为对应,用dumps转化成的json字符串,可以用loads把json格式的字符串转成python中的对应数据结构

4.load

与dump互为对应,可以从json文件中读取相应的json字符串,并将其转化为python中对应的数据结构。

二.示例:

1.dumps

def test_dumps():
    tmp_dict = {
        "apple": "red",
        "fish": "water",
        "cat": "black"
    }
    print("before use dumps:")
    print(type(tmp_dict))
    print("after use dumps:")
    tmp_dict = json.dumps(tmp_dict)#使用dumps将字典类型的数据转化为json形式的字符串
    print(type(tmp_dict))

效果如下:

2.loads

def test_loads():
    tmp_dict = {
        "apple": "red",
        "fish": "water",
        "cat": "black"
    }
    tmp_dict = json.dumps(tmp_dict)#将python数据结构转化为json字符串
    print ("before use loads")
    print(type(tmp_dict))
    print("after use loads")
    tmp_dict = json.loads(tmp_dict)#将json字符串转化为python数据结构
    print(type(tmp_dict))

3.dump

def test_dump():
    tmp_dict = {
        "apple": "red",
        "fish": "water",
        "cat": "black"
    }
    path = 'one.json' #需要存储的json文件的路径
    with open(path,'wb') as f:
        json.dump(tmp_dict,f) #将python中的数据结构,此处为字典转化为json字符串并存到文件

4.load

def test_load():
    path = 'one.json'
    with open(path,'rb') as f:
        data = json.load(f) #将json数据从文件中读出来
        print(type(data))
        print data

 

读取JSON文件可以使用json模块的load函数来读取json文件,代码如下: ```python import json with open('data.json', 'r') as f: data = json.load(f) ``` 另外,也可以使用json模块的loads函数来读取json字符串,代码如下: ```python import json with open('data.json', 'r') as f: data_str = f.read() data = json.loads(data_str) ``` 写入JSON文件可以使用json模块的dump函数来写入json文件,代码如下: ```python import json data = {'name': 'Tom', 'age': 18} with open('data.json', 'w') as f: json.dump(data, f) ``` 另外,也可以使用json模块的dumps函数将字典转换为json字符串并写入文件,代码如下: ```python import json data = {'name': 'Tom', 'age': 18} with open('data.json', 'w') as f: data_str = json.dumps(data) f.write(data_str) ``` 以上是使用json模块进行读写json文件的方法。\[1\]\[2\] #### 引用[.reference_title] - *1* *2* [python读写json文件方法详解](https://blog.csdn.net/qq_42751978/article/details/130668983)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Python读写json数据详解](https://blog.csdn.net/qq_37189082/article/details/124654767)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值