零食网站模板,网络舆情监测分析,台州云建站模板,xampp wordpress 花生壳来自wetab 的AI pro:
JSON#xff08;JavaScript Object Notation#xff09;是一种轻量级的数据交换格式#xff0c;易于人阅读和编写#xff0c;同时也易于机器解析和生成。JSON采用完全独立于语言的文本格式#xff0c;但是它使用了类似于编程语言#xff08;特别是J…来自wetab 的AI pro:
JSONJavaScript Object Notation是一种轻量级的数据交换格式易于人阅读和编写同时也易于机器解析和生成。JSON采用完全独立于语言的文本格式但是它使用了类似于编程语言特别是JavaScript的习惯。因此这种格式非常流行在网络应用中用于数据交互。
JSON是由多种类型的值组成
对象Object对象在JSON中表示为一系列键值对“key”: value被大括号 {} 包围。每个键key是一个字符串每个值value可以是字符串、数字、数组、真/假值或者另一个对象。数组Array数组是一系列值value被方括号 [] 包围值之间用逗号分隔。值Value值可以是字符串、数字、对象、数组、布尔值true/false或者 null。
示例 JSON 数据
{person: {name: John Doe,age: 30,isStudent: false,skills: [Python, JavaScript],address: {street: 123 Elm St,city: Somewhere}}
}在这个示例中
“person” 是一个对象包含了五个键值对name, age, isStudent, skills, 和 address。“skills” 是一个数组包含了两个字符串值。“address” 是一个嵌套对象包含了 street 和 city 两个键。
如何使用 Python 处理 JSON
Python 支持 JSON 通过 json 库允许你解析 JSON 字符串及文件并可以将内部数据结构变回 JSON 格式。
以下是基于上述 JSON 示例的处理代码
import json# JSON 字符串
json_string
{person: {name: John Doe,age: 30,isStudent: false,skills: [Python, JavaScript],address: {street: 123 Elm St,city: Somewhere}}
}
# 将 JSON 字符串转换为 Python 字典
data json.loads(json_string)# 访问数据
name data[person][name]
age data[person][age]
skills data[person][skills]
city data[person][address][city]print(fName: {name}, Age: {age}, City: {city})
print(Skills:, skills)# 添加一个新的技能
data[person][skills].append(R)# 将 Python 字典转换回 JSON 字符串
updated_json json.dumps(data, indent4)
print(Updated JSON:)
print(updated_json)这个代码段展示了如何从一个 JSON 字符串读取数据怎样访问和修改数据以及如何将修改后的数据写回到 JSON 格式。dumps()方法将Python对象序列化为JSON字符串。
进一步的将上面的json_string保存为一个json文件并从文件读取内容然后将[person][name]的值改为Tom再次保存json文件 import json# JSON 字符串
json_string
{person: {name: John Doe,age: 30,isStudent: false,skills: [Python, JavaScript],address: {street: 123 Elm St,city: Somewhere}}
}
# 将字符串保存到 JSON 文件
with open(data.json, w) as file:file.write(json_string)# 从文件读取 JSON 数据
with open(data.json, r) as file:data json.load(file)# 修改name的值
data[person][name] Tom# 将更新后的数据保存回 JSON 文件
with open(data.json, w) as file:json.dump(data, file, indent4)# 打印输出以验证更改
print(json.dumps(data, indent4))
indent4 表示每一层数据前将插入四个空格作为缩进。这使得生成的 JSON 数据结构清晰方便人类阅读和调试。如果不设这个参数上述数据的打印结果是{person: {name: Tom, age: 30, isStudent: false, skills: [Python, JavaScript], address: {street: 123 Elm St, city: Somewhere}}}。设定缩进后{ person: { name: Tom, age: 30, isStudent: false, skills: [ Python, JavaScript ], address: { street: 123 Elm St, city: Somewhere } } }