Python中的JSON如何用,字符串怎样转换为JSON
Admin 2022-06-21 群英技术资讯 1043 次浏览
这篇文章给大家分享的是Python中的JSON如何用,字符串怎样转换为JSON。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。JSON 是 JavaScript Object Notation(JavaScript 对象标记)的缩写。
它是一种数据格式,用于为 Web 应用程序存储和传输信息。
JSON 最初来自 JavaScript 编程语言,但它并不仅仅局限于一种语言。
大多数现代编程语言都有用于解析和生成 JSON 数据的库。
JSON 主要用于在服务器和客户端之间发送和接收数据,其中客户端是网页或 Web 应用程序。
在 Web 应用程序通过网络连接时使用的请求-响应周期中,这是一种更可靠的格式。与复杂且不太紧凑的 XML 相比,JSON 是使用得更多的格式。
在 JSON 中,数据以键值对的形式写入,如下所示:
"first_name": "Katie"
数据用双引号括起来,键值对用冒号分隔。
可以有多个键值对,每个键值对之间用逗号分隔:
"first_name": "Katie", "last_name": "Rodgers"
上面的例子展示了一个对象,一个多个键值对的集合。
对象在花括号内:
{
"first_name": "Katie",
"last_name": "Rodgers"
}
你还可以使用 JSON 创建数组,即值的有序列表。在这种情况下,数组包含在方括号内:
[
{
"first_name": "Katie",
"last_name": "Rodgers"
},
{
"first_name": "Naomi",
"last_name": "Green"
},
]
// or:
{
"employee": [
{
"first_name": "Katie",
"last_name": "Rodgers"
},
{
"first_name": "Naomi",
"last_name": "Green"
},
]
}
//this created an 'employee' object that has 2 records.
// It defines the first name and last name of an employee
要在 Python 中使用 JSON,首先需要在 Python 文件的顶部包含 JSON 模块。这是 Python 内置的,是标准库的一部分。
因此,假设你有一个名为 demo.py 的文件。在顶部,你将添加以下行:
import json
如果你的程序中有 JSON 字符串数据,如下所示:
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type() method
print(type(employee_string))
#output
#<class 'str'>
你可以使用 json.loads() 函数将其转换为 Python 中的 JSON。
json.loads() 函数接受有效字符串作为输入并将其转换为 Python 字典。
这个过程叫作反序列化——将字符串转换为对象。
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type() method
print(type(employee_string))
#convert string to object
json_object = json.loads(employee_string)
#check new data type
print(type(json_object))
#output
#<class 'dict'>
然后,你可以访问每个单独的项目,就像使用 Python 字典时一样:
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type() method
print(type(employee_string))
#convert string to object
json_object = json.loads(employee_string)
#check new data type
print(type(json_object))
#output
#<class 'dict'>
#access first_name in dictionary
print(json_object["first_name"])
#output
#Michael
让我们再举一个例子:
1. 取一些 JSON 字符串数据
import json
#json string
employees_string = '''
{
"employees": [
{
"first_name": "Michael",
"last_name": "Rodgers",
"department": "Marketing"
},
{
"first_name": "Michelle",
"last_name": "Williams",
"department": "Engineering"
}
]
}
'''
#check data type using the type() method
print(type(employees_string))
#output
#<class 'str'>
2. 使用 json.loads() 函数将字符串转换为对象
import json
emoloyees_string = '''
{
"employees" : [
{
"first_name": "Michael",
"last_name": "Rodgers",
"department": "Marketing"
},
{
"first_name": "Michelle",
"last_name": "Williams",
"department": "Engineering"
}
]
}
'''
data = json.loads(employees_string)
print(type(data))
#output
#<class 'dict'>
3. 读取数据
import json
employees_string = '''
{
"employees" : [
{
"first_name": "Michael",
"last_name": "Rodgers",
"department": "Marketing"
},
{
"first_name": "Michelle",
"last_name": "Williams",
"department": "Engineering"
}
]
}
'''
data = json.loads(employees_string)
print(type(data))
#output
#<class 'dict'>
#access first_name
for employee in data["employees"]:
print(employee["first_name"])
#output
#Michael
#Michelle
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了利用Python pyecharts绘制饼图,饼图主要用于表现不同类目的数据在总和中的占比。每个的弧度不是数据量的占比,下面我们一起进入文章看看具体的实现过程吧,需要的朋友也可以参考一下
这篇文章主要为大家介绍了 Python字典的增删改查,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
这篇文章主要为大家介绍了python根据照片获取地理位置及泄露防御,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
ord() 函数是 chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,这篇文章主要介绍了python 中内置函数ord()返回字符串的ASCII数值,需要的朋友可以参考下
这篇文章主要给大家介绍了关于Python matplotlib绘制散点图的相关资料,所谓散点图就是反映两组变量每个数据点的值,并且从散点图可以看出它们之间的相关性,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008