Python与JSON

JSON是JavaScript Object Notation的简写,即JavaScript对象标记。

JSON是一种轻量级的数据交换格式。

字符串是JSON的表现形式。

JSON字符串:符合JSON格式的字符串。如:{"name": "qiyue"}

JSON字符串中的key需要加双引号。

JSON的优势:

  • 易于阅读
  • 易于解析
  • 网络传输效率高(轻量、简洁)
  • 非常适合做跨语言交换数据

反序列化

反序列化:由字符串到某一种语言的数据结构的解析过程。

json字符串(json object)对应到python中是字典形式。

方法:json.loads()

示例:

import json
json_str='{"name":"qiyue","age":18}'
student=json.loads(json_str)
print(type(student))
print(student)

#执行结果
> python p5.py
<class 'dict'>
{'name': 'qiyue', 'age': 18}

loads()函数主要功能:将json的数据类型转换为python的数据类型。

示例(json数组格式转换为python中的list数据结构):

import json
json_str2='[{"name":"qiyue","age":18,"flag":false},{"name":"妲己","age":17}]' #有两个object的数组
student=json.loads(json_str2)
print(type(student))
print(student)

#执行结果
> python p5.py
<class 'list'>
[{'name': 'qiyue', 'age': 18, 'flag': False}, {'name': '妲己', 'age': 17}]

JSON和Python中的数据格式对应

序列化

序列化:python的数据类型向JSON字符串转换的过程。

方法:json.dumps()

import json
student=[
          {'name': 'qiyue', 'age': 18, 'flag': False}, 
          {'name': '妲己', 'age': 17}
        ]
json_str=json.dumps(student)
print(type(json_str))
print(json_str)

#执行结果
> python p4.py
<class 'str'>
[{"name": "qiyue", "age": 18, "flag": false}, {"name": "\u59b2\u5df1", "age": 17}]
#中文输出的是unicode编码的结果

Tips:

JSON对象:如果放在javascript里面说,json对象这个说法是成立的;如果跳出语言范畴,没有json对象这个说法。

JSON并不是Javascript的附属。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值