在Python中将字符串转换为JSON

在Python中将字符串转换为JSON

在深入研究这个主题之前,让我们先来了解一下字符串和JSON是什么?

字符串: 是一系列使用单引号”表示的字符。它们是不可变的,这意味着一旦声明就不能更改。

JSON: 代表”JavaScript对象标记语言”,JSON文件由文本组成,可以轻松被人类阅读,并以属性-值对的形式存在。

JSON文件的扩展名是”.json”

让我们来看一下在Python中将字符串转换为json的第一种方法。

下面的程序演示了同样的操作。

# converting string to json
import json

# initialize the json object
i_string = {'C_code': 1, 'C++_code' : 26,
      'Java_code' : 17, 'Python_code' : 28}

# printing initial json
i_string = json.dumps(i_string)
print ("The declared dictionary is ", i_string)
print ("It's type is ", type(i_string))

# converting string to json
res_dictionary = json.loads(i_string)

# printing the final result
print ("The resultant dictionary is ", str(res_dictionary))
print ("The type of resultant dictionary is", type(res_dictionary))

输出:

The declared dictionary is {'C_code': 1, 'C++_code' : 26,
      'Java_code' : 17, 'Python_code' : 28}
It's type is <class 'str'>
The resultant dictionary is {'C_code': 1, 'C++_code' : 26,
      'Java_code' : 17, 'Python_code' : 28}
The type of resultant dictionary is <class 'dict'>

解释:

现在是时候看解释,以便我们的逻辑变得清晰-

  1. 由于这里的目标是将一个字符串转换为json文件,我们首先要导入json模块。
  2. 下一步是初始化json对象,在其中主题名称被指定为键,然后指定它们的相应值。
  3. 在此之后,我们使用 dumps() 将Python对象转换为json字符串。
  4. 最后,我们将使用 loads() 来解析JSON字符串并将其转换为字典。

使用eval()

# converting string to json
import json

# initialize the json object
i_string = """ {'C_code': 1, 'C++_code' : 26,
      'Java_code' : 17, 'Python_code' : 28}
"""

# printing initial json
print ("The declared dictionary is ", i_string)
print ("Its type is ", type(i_string))

# converting string to json
res_dictionary = eval(i_string)

# printing the final result
print ("The resultant dictionary is ", str(res_dictionary))
print ("The type of resultant dictionary is ", type(res_dictionary))

输出:

The declared dictionary is   {'C_code': 1, 'C++_code' : 26,
            'Java_code' : 17, 'Python_code' : 28}

Its type is  <class 'str'>
The resultant dictionary is  {'C_code': 1, 'C++_code': 26, 'Java_code': 17, 'Python_code': 28}
The type of resultant dictionary is  <class 'dict'>

解释:

让我们了解一下上面的程序中所做的事情。

  1. 由于这里的目标是将字符串转换为json文件,我们首先导入json模块。
  2. 下一步是初始化json对象,其中我们将科目名称作为键,然后指定其对应的值。
  3. 然后,我们使用 eval() 将Python字符串转换为json。
  4. 在执行程序时,它显示所需的输出。

提取值

最后,在最后一个程序中,我们将在将字符串转换为json后提取值。

让我们来看一下吧。

import json
i_dict = '{"C_code": 1, "C++_code" : 26, "Java_code":17, "Python_code":28}'
res = json.loads(i_dict)
print(res["C_code"])
print(res["Java_code"])

输出:

1
17

我们可以在输出中观察到以下内容-

  1. 我们使用json.loads()函数将字符串转换为json。
  2. 在此之后,我们使用”C_code”和”Java_code”键来获取它们对应的值。

结论

在本教程中,我们学习了如何使用Python将字符串转换为json。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程