Python 如何将字典打印成JSON格式

Python 如何将字典打印成JSON格式

可以使用json Python模块将Python字典轻松显示为JSON格式。json模块是一个JSON编码器/解码器。JSON是JavaScript对象表示法,一种轻量级的基于文本的开放标准,设计用于人类可读的数据交换。JSON格式由Douglas Crockford指定。它已经从JavaScript脚本语言扩展。

将字典视为一组键值对,要求键在字典中是唯一的。 字典中的每个键与其值之间用冒号(:)分隔,项目之间用逗号分隔,并用花括号括起来。

让我们首先创建一个Python字典并提取所有的值。在这里,我们在字典中包含了4个键值对并将它们显示出来。

示例

# Creating a Dictionary with 4 key-value pairs
myprod = {
    "Product":"Mobile",
    "Model": "XUT",
    "Units": 120,
    "Available": "Yes"
}

# Displaying the Dictionary
print(myprod)

# Displaying individual values
print("Product = ",myprod["Product"])
print("Model = ",myprod["Model"])
print("Units = ",myprod["Units"])
print("Available = ",myprod["Available"])

输出

{'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'}
Product =  Mobile
Model =  XUT
Units =  120
Available =  Yes

以上是我们展示了一个包含四对键-值的字典,包含产品信息。现在,我们将看到Python中更新字典值的两种方法。现在,我们将把字典设置为JSON格式。

使用dumps()方法将字典打印成JSON格式

json模块的dumps()函数用于返回Python字典对象的JSON字符串表示。dumps()的参数是字典对象-

示例

import json

# Creating a Dictionary with 4 key-value pairs
myprod = {
    "Product":"Mobile",
    "Model": "XUT",
    "Units": 120,
    "Available": "Yes"
}

# Converting to JSON format
myJSON = json.dumps(myprod)

# Displaying the JSON format
print("\nJSON format = ",myJSON);

输出

JSON format = {"Product": "Mobile", "Model": "XUT", "Units": 120, "Available": "Yes"}

使用__str__(self)方法将字典打印成JSON对象

__str___(self)函数用于返回对象的字符串表示。我们在这里声明了一个类,并使用它来进行字符串表示,将其转换为json对象 –

示例

import json
# Creating a Dictionary
myprod = {
    "Product":"Mobile",
    "Model": "XUT",
    "Units": 120,
    "Available": "Yes"
}
# Declared a class
class myfunc(dict):
    def __str__(self):
        return json.dumps(self)
myJSON = myfunc(myprod)
print("\nJSON format = ",myJSON);

输出

JSON format = {"Product": "Mobile", "Model": "XUT", "Units": 120, "Available": "Yes"}

将字典打印为JSON数组

数组可以转换为JSON对象。我们将在一个数组中设置键和值,并使用dump()方法。

示例

import json
# Creating a Dictionary
myprod = {
    "Product":"Mobile",
    "Model": "XUT",
    "Units": 120,
    "Available": "Yes"
}

# Keys and Values of a Dictionary in an array
arr = [ {'key' : k, 'value' : myprod[k]} for k in myprod]

# Displaying the JSON
print("\nJSON format = ",json.dumps(arr));

输出

JSON format = [{"key": "Product", "value": "Mobile"}, {"key": "Model", "value": "XUT"}, {"key": "Units", "value": 120}, {"key": "Available", "value": "Yes"}]

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程