📜  如何从python中的字符串中提取字典值(1)

📅  最后修改于: 2023-12-03 14:51:47.284000             🧑  作者: Mango

如何从 Python 中的字符串中提取字典值

有时候我们会从某个数据源中得到一个字符串,但是我们需要从中提取出字典的值。下面我们会介绍如何从 Python 中的字符串中提取字典值。

假设我们有以下字典:

{"name": "John", "age": 25, "location": "New York"}

我们将其转换成字符串:

mystring = "{'name': 'John', 'age': 25, 'location': 'New York'}"

那么我们如何从这个字符串中提取字典的值呢?

我们可以通过 eval 函数来将字符串转换成字典,如下:

mydict = eval(mystring)

现在我们已经将字符串转换成了字典,我们可以像平常一样从中取出值,例如:

name = mydict["name"]
print(name)  # 输出: John

但是需要注意的是使用 eval 函数存在一定的安全风险,因为它会执行字符串中包含的所有代码。因此,在使用 eval 函数时需要小心。

另外,如果字符串中包含单引号字符导致 eval 函数调用失败,我们可以使用 json 模块将字符串转换成字典,如下:

import json

mystring = "{'name': 'John', 'age': 25, 'location': 'New York'}"
mydict = json.loads(mystring.replace("'", "\""))

现在我们可以从 mydict 中获取字典的值。

总结:

  • 使用 eval 函数可以将字符串转换成字典
  • eval 存在一定的安全风险,需要小心使用
  • 如果字符串中包含单引号字符导致 eval 调用失败,可以使用 json 模块将字符串转换成字典