python处理json

一、了解json

JSON:JavaScript Object Notation (JavaScript 对象表示法)

json是一种轻量级的数据交换格式,完全独立于任何语言程序语言的文本格式。一般后台应用程序将响应数据封装成json格式返回

基本语法:名称/值对 名称/值对包括字段名称(在双引号中),接着是冒号(:),最后是值

json最常用格式是对象的键值对

{
"sites": [
{ "name":"360" , "url":"www.360.com" }, 
{ "name":"google" , "url":"www.google.com" }, 
{ "name":"baidu" , "url":"www.baidu.com" }
            ]
}

key只能是string, value可以是 数字(整数或浮点数)、字符串、true/false、数组、对象、null

键通过双引号包裹,后面跟冒号(:),然后跟键的值
值可以是数字、字符串、数组等类型
对象与对象之间用逗号隔开
“{}”用来保存对象
“[]”用来保存数组

二、python中json与字典的区别

json的key只能是字符串,dict的key可以是字符串、数字、元组等
字典是一种数据结构,json是一种数据格式,字典有许多内置方法,有多种调用方式。而json是一种数据打包的一种格式,不如字典的具备操作性
json的字符串强制用双引号,字典的字符串可以用单双引号
一般,我们会把json转化成python的字典或列表,在进行操作

三、python处理json的模块

python3的标准库JSON模块
常用JSON模块方法:
json.dumps():把python中的对象转换成json中的字符串对象
json.dump():将python对象转换成json字符串输出到文件流中
json.loads():将json中的字符串对象转换成python对象
json.load():读取包含json对象的文件
注:带s的都是和字符串相关的,不带s的都是和文件相关的。
在这里插入图片描述

四、实例

1、使用json.dumps()将字典转换成json字符串

//使用json.dumps()方法将字典转换为JSON字符串
person_dict={'name':'xiaohong','age':12}
person_json=json.dumps(person_dict)
print(type(person_json))
print('person_json'+person_json)

在这里插入图片描述

2.使用json.dump()将字典以json格式写入python文件

person_dict = {'name': 'xiaohong', 'age': 12, 'number': '2222222'}
with open('test1.json', 'w', encoding='utf-8') as json_f:
    json.dump(person_dict, json_f)

在这里插入图片描述

3.使用json.loads()方法解析JSON字符串,返回一个字典

person_json_str = '{"name": "xiaohong", "age": 12, "number": "2222222"}'
person_dict = json.loads(person_json_str)
print(type(person_dict))

转换成字典后可以使用key来访问
print(person_dict[“name”])

在这里插入图片描述

4.使用json.load()读取json文件
#读取json文件

with open('test1.json', 'r') as f:
    data = json.load(f)
print(type(data))
print(data)

在这里插入图片描述

python类型转换json类型的对应关系表

在这里插入图片描述

json类型转换成python类型对照表

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值