python - python3 中的 JSON 字符串和 .format()

标签 python json string python-3.x

我正在尝试使用 .format() 生成 JSON 字符串。 我尝试了以下方法:

TODO_JSON = '{"id": {0},"title": {1},"completed:" {2}}'
print(TODO_JSON.format(42, 'Some Task', False))

这会引发

File "path/to/file", line 2, in <module>
    print(TODO_JSON.format(42, 'Some Task', False))
KeyError: '"id"'

为什么会出现这个错误?为什么“id”被解释为键而不是字符串的一部分?

最佳答案

如果您需要文字 {}

{}str.format 中具有特殊含义(占位符和变量名) >格式,您可以使用{{}}:

TODO_JSON = '{{"id": {0},"title": {1},"completed:" {2}}}'
print(TODO_JSON.format(42, 'Some Task', False))
# {"id": 42,"title": Some Task,"completed:" False}

关于python - python3 中的 JSON 字符串和 .format(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44092715/

相关文章:

python - 在 python 中打印出 c 类型的二进制表示

json - 用 Circe 递归替换所有 JSON 字符串值

c# - 从 SqlDataReader 创建 JSON 字符串

Java:在两个不同的点将一个字符串拆分为 3 个部分

java - 构建时显示奇怪的字符,但不显示调试

MySQL 查询 WP 捆绑产品

python - web.py 应用程序上的 Pytests 未覆盖方法代码

python - 如何实时改变音量

jquery - 如何使用jquery将项目添加到无序列表<ul>

python - 重复序列的正则表达式