在深入研究这个主题之前,让我们先了解一下什么是字符串和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。

标签: Tkinter教程, Tkinter安装, Tkinter库, Tkinter入门, Tkinter学习, Tkinter入门教程, Tkinter, Tkinter进阶, Tkinter指南, Tkinter学习指南, Tkinter进阶教程, Tkinter编程