针对“Python中的json对象与string相互转换教程”,我将从以下几个方面进行详细讲解:
- JSON和Python的基本介绍
- Python中json对象与字符串的相互转换
- 两个示例说明
JSON和Python的基本介绍
JSON是一种轻量级的数据交换格式,易于阅读和编写。而Python是一种解释型的高级编程语言,具有动态语言的特性,广泛应用于Web开发、科学计算、人工智能等领域。Python中内置了用于JSON解析和序列化的标准库json。
Python中json对象与字符串的相互转换
在Python中,将JSON字符串转换成对应的Python对象可以使用json.loads()方法,将Python对象转换成JSON字符串可以使用json.dumps()方法。下面是详细的使用方法:
- 将JSON字符串转换成Python对象
import json
# JSON字符串
json_str = '{"name":"张三","age":18}'
# 将JSON转换为Python对象
python_obj = json.loads(json_str)
# 打印Python对象
print(python_obj)
执行结果:
{'name': '张三', 'age': 18}
- 将Python对象转换成JSON字符串
import json
# Python对象
python_obj = {'name': '张三', 'age': 18}
# 将Python对象转换为JSON字符串
json_str = json.dumps(python_obj)
# 打印JSON字符串
print(json_str)
执行结果:
{"name": "\u5f20\u4e09", "age": 18}
可以发现,使用json.dumps()方法转换出来的JSON字符串中,中文字符被转码成了Unicode编码,而不是中文字符本身。如果想让JSON字符串中显示中文字符,可以添加参数ensure_ascii=False:
json_str = json.dumps(python_obj, ensure_ascii=False)
两个示例说明
下面给出两个示例说明:
- 将JSON字符串写入文件
import json
# JSON字符串
json_str = '{"name":"张三","age":18}'
# 将JSON字符串转换为Python对象
python_obj = json.loads(json_str)
# 将Python对象写入JSON文件
with open('data.json', 'w', encoding='utf-8') as f:
json.dump(python_obj, f, ensure_ascii=False)
# 从JSON文件中读取JSON字符串并转换为Python对象
with open('data.json', 'r', encoding='utf-8') as f:
json_str = json.load(f)
print(json_str)
执行结果:
{'name': '张三', 'age': 18}
- 将Python字典转换为JSON字符串并格式化输出
import json
# Python字典
data = {'name': '张三', 'age': 18, 'friends': ['李四', '王五']}
# 将Python字典转换为JSON字符串,并格式化输出
json_str = json.dumps(data, indent=4, ensure_ascii=False)
print(json_str)
执行结果:
{
"name": "张三",
"age": 18,
"friends": [
"李四",
"王五"
]
}
以上就是“Python中的json对象与string相互转换教程”的完整攻略,希望可以帮助到你。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python中的json对象与string相互转换教程 - Python技术站