Python中JSON库的使用

Python中JSON库的使用

在NLP学习中,经常用到:json对象与Python对象相互转换。一般读入json文件,用Python 语言来编码和解码 JSON 对象,进而进行其他的操作。

  1. 使用 JSON 函数需要导入 json 库:import json
  2. 存取json文件:
    存json文件:python对象存到json格式的文件,要用dump;读json文件:从json文件中读取内容存入python对象,不再用loads而是要用load。
#存json文件:python对象存到json格式的文件,要用dump:
    dic_info = {'name':'WZX', 'husband':'M', 'age':22}
    filee = open ('WZX.json', 'w', encoding='utf-8')
    json.dump(dic_info, filee)
    filew.close()
#读json文件:从json文件中读取内容存入python对象,不再用loads而是要用load:
    filee = open ('WZX.json', 'r', encoding='utf-8')
    WZX = json.load(filee)
    file.close()
  1. 解码: json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
  1. 编码:json.dumps 用于将 Python 对象编码成 JSON 字符串。
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
  json.dumps(dic, (python对象:列表list1 = [1, 'big', [1, 'a', {'p':'+'}], (['t',2],{'1':'o'}), {'c':0,'d':1}];
                              字典dic = {'b':'I', 'a':123, 'c':'100'},将字典转换为json字符串时,key需为数字或字母,否则报错,可通过skipkeys参数跳过这些键:
                              元组:tuple1 = (1, 0) )

             sort_keys = True, sort_keys参数置为True时,生成的json对象是按键排序的,sort_keys默认为False
             indent = 4;通过indent参数可以设置json对象的缩进格式
             separators = ('$','@'),通过separators参数可以设置json对象的分隔符
             skipkeys = True,将字典转换为json字符串时,key需为数字或字母,否则报错,可通过skipkeys参数跳过这些键:
             ensure_ascii=False,dumps对中文使用ascii编码方式,通过将ensure_ascii参数设置为False可输出中文:
)

Pythonjson是用于处理JSON数据的标准。它提供了一组函数和方法,用于将Python对象编码为JSON字符串,或将JSON字符串解码为Python对象。下面是json的一些常用方法: 1. 将Python对象编码为JSON字符串:使用`json.dumps()`方法可以将Python对象编码为JSON字符串。例如: ```python import json data = { "name": "John", "age": 30, "city": "New York" } json_str = json.dumps(data) print(json_str) ``` 输出: ``` {"name": "John", "age": 30, "city": "New York"} ``` 2. 将JSON字符串解码为Python对象:使用`json.loads()`方法可以将JSON字符串解码为Python对象。例如: ```python import json json_str = '{"name": "John", "age": 30, "city": "New York"}' data = json.loads(json_str) print(type(data)) print(data) ``` 输出: ``` <class 'dict'> {'name': 'John', 'age': 30, 'city': 'New York'} ``` 3. 将Python对象编码为JSON数据并写入文件:使用`json.dump()`方法可以将Python对象编码为JSON数据,并将其写入文件中。例如: ```python import json data = { "name": "John", "age": 30, "city": "New York" } with open("data.json", "w") as f: json.dump(data, f) ``` 4. 从JSON文件中读取数据并解码为Python对象:使用`json.load()`方法可以从JSON文件中读取数据,并将其解码为Python对象。例如: ```python import json with open("data.json", "r") as f: data = json.load(f) print(type(data)) print(data) ``` 输出: ``` <class 'dict'> {'name': 'John', 'age': 30, 'city': 'New York'} ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laura_Wangzx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值