python实现字典(dict)和字符串(string)的相互转换方法

  • Post category:Python

下面是关于Python实现字典和字符串的相互转换方法的完整攻略。

字典(dict)转字符串(string)

使用json.dumps()方法

json模块是Python的内置模块,它提供了一种序列化/反序列化对象的方法。可以使用json.dumps()方法将字典转换为字符串。下面是一个示例:

import json

# 定义一个字典
dict1 = {"name": "Tom", "age": 22, "gender": "Male"}

# 将字典转换为字符串
str1 = json.dumps(dict1)

# 打印转换后的字符串
print(type(str1), str1)

输出:

<class 'str'> {"name": "Tom", "age": 22, "gender": "Male"}

使用字符串格式化方法

可以使用Python的字符串格式化方法将字典转换为字符串。下面是一个示例:

# 定义一个字典
dict1 = {"name": "Tom", "age": 22, "gender": "Male"}

# 使用字符串格式化方法将字典转换为字符串
str1 = str(dict1).replace("'", "\"")

# 打印转换后的字符串
print(type(str1), str1)

输出:

<class 'str'> {"name": "Tom", "age": 22, "gender": "Male"}

字符串(string)转字典(dict)

使用json.loads()方法

可以使用json模块的json.loads()方法将字符串转换为字典。下面是一个示例:

import json

# 定义一个字符串
str1 = '{"name": "Tom", "age": 22, "gender": "Male"}'

# 将字符串转换为字典
dict1 = json.loads(str1)

# 打印转换后的字典
print(type(dict1), dict1)

输出:

<class 'dict'> {'name': 'Tom', 'age': 22, 'gender': 'Male'}

使用eval()方法

可以使用Python的eval()方法将字符串转换为字典。但是需要注意的是,eval()方法会执行字符串中的Python代码,所以必须对字符串来源进行严格的限制,避免安全问题。下面是一个示例:

# 定义一个字符串
str1 = "{'name': 'Tom', 'age': 22, 'gender': 'Male'}"

# 将字符串转换为字典
dict1 = eval(str1)

# 打印转换后的字典
print(type(dict1), dict1)

输出:

<class 'dict'> {'name': 'Tom', 'age': 22, 'gender': 'Male'}

以上就是Python实现字典和字符串的相互转换方法的完整攻略。