Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
json
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
模块 json 是包含 JSON 相关函数的 Starlark 模块。
成员
解码
unknown json.decode(x)
解码函数接受一个位置参数,即 JSON 字符串。
它会返回字符串表示的 Starlark 值。
<ph type="x-smartling-placeholder">
</ph>- “null”“true”和“false”会解析为 None、True 和 False。
- 系统会将数字解析为整数,如果数字包含小数点或指数,则解析为浮点数。虽然 JSON 没有针对非有限值的语法,但非常大的值可能会被解码为无穷大。
- 一个 JSON 对象被解析为新的未冻结 Starlark 字典。如果同一键字符串在对象中多次出现,则保留该键的最后一个值。
- 一个 JSON 数组被解析为新的未冻结 Starlark 列表。
。
如果 x 不是有效的 JSON 编码,则解码失败。
参数
encode
string json.encode(x)
编码函数接受一个必需的位置参数,该参数会根据情况转换为 JSON:
- None、True 和 False 分别转换为“null”、“true”和“false”。
- 无论整数有多大,都会编码为十进制整数。某些解码器可能无法解码非常大的整数。
- 浮点数使用小数点和/或指数进行编码,即使其数值为整数也是如此。对非有限浮点值进行编码会发生错误。
- 字符串值被编码为表示值的 JSON 字符串字面量。每个未配对的代理都会替换为 U+FFFD。
- 字典按照键顺序编码为 JSON 对象。如果任意键不是字符串,则会引发错误。
- 列表或元组编码为 JSON 数组。
- 类似结构体的值会按字段名称顺序编码为 JSON 对象。
。
应用定义的类型可以定义自己的 JSON 编码。
对任何其他值进行编码都会产生错误。
参数
encode_indent
string json.encode_indent(x, *, prefix='', indent='\t')
Codeen_ending 函数等效于
json.indent(json.encode(x), ...)。有关格式参数的说明,请参阅
indent。
参数
| 参数 |
说明 |
x
|
必需
|
prefix
|
默认值 = ''
|
indent
|
默认值 = '\t'
|
缩进
string json.indent(s, *, prefix='', indent='\t')
缩进函数会返回 JSON 编码的有效字符串的缩进形式。
每个数组元素或对象字段都另起一行,以前缀字符串开头,后跟一个或多个缩进字符串副本(具体取决于其嵌套深度)。
该函数接受一个必需的位置参数,即 JSON 字符串。
和两个仅包含关键字的可选字符串参数(前缀和缩进)
,用于指定每个新行的前缀和缩进单位。
如果输入无效,函数可能会失败或返回无效的输出。
参数
| 参数 |
说明 |
s
|
必需
|
prefix
|
默认值 = ''
|
indent
|
默认值 = '\t'
|
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2026-01-22。
[null,null,["最后更新时间 (UTC):2026-01-22。"],[],[]]