json.dumps()

json.dumps() 是 Python 标准库 json 模块中的一个函数,用于将 Python 对象编码成 JSON 格式的字符串。以下是其基本用法和一些参数说明:

基本用法

import json

data = {
    'name': 'Alice',
    'age': 30,
    'city': 'New York'
}

json_string = json.dumps(data)
print(json_string)

输出:

{"name": "Alice", "age": 30, "city": "New York"}

参数说明

  • obj:要编码的 Python 对象。

  • skipkeys:如果为 True,则跳过字典中不是基本类型(如自定义类)的键。

  • ensure_ascii:如果为 True,则所有非 ASCII 字符会被转义为 Unicode 转义序列;如果为 False,则尝试直接使用 utf-8 编码写入。

  • check_circular:如果为 True,在对象中存在循环引用时抛出 TypeError

  • allow_nan:如果为 True,允许序列化 NaNInfinity-Infinity

  • cls:指定一个自定义的编码函数。

  • indent:指定缩进的空格数,使输出更易读。

  • separators:自定义分隔符,用于键值对之间以及键与值之间的分隔。

  • default:指定一个函数,用于处理无法直接序列化的对象。

  • sort_keys:如果为 True,则按照字典键的字母顺序排序输出。

示例

import json

data = {
    'name': 'Winnie',
    'age': 20
}

# 使用 indent 参数
json_string_indented = json.dumps(data, indent=4)
print(json_string_indented)

输出:

{
    "name": "Winnie",
    "age": 20
}

json.dumps() 函数在需要将 Python 数据结构转换为 JSON 格式的字符串时非常有用,尤其是在与 Web 服务器交互或数据存储到文件中时。

Top