【问题标题】:Can't format(self) JSON to fill in information无法格式化(自)JSON 来填写信息
【发布时间】:2020-01-08 22:27:53
【问题描述】:
data = '{{"user": "{{0.user}}", "pass": "{{0.pass}}", "code": "123456789"}}'
data = data.format(self)
data = json.dumps(data)
print(data)

尝试转义 {} 以查看是否有帮助,但仍无法填写信息。它打印出“{0.user}”和“{0.pass}”,而不是用数据填充它们。

.format(self) 如果更多是 POST 类型,则可以正常工作:

data = "user={0.user}&pass={0.pass}"
data = data.format(self)
print(data)

是外面的{}吗?我该怎么办?

【问题讨论】:

  • 第二行代码中的self是什么?
  • {{ 表示一个乱七八糟的{ - 只需使用一个,如'{{"user": "{0.user}", ...。另外请注意,您不能使用pass 或任何其他关键字作为属性名称。
  • 但我不明白你的目标是什么。如果你想要一个字典,只需将它创建为一个字典。如果您想要您的 dict 的 JSON 表示,请创建它并使用 json 创建字符串。您真的打算获得代表您的 dict 的字符串的 JSON 表示形式吗?

标签: python python-3.x python-requests


【解决方案1】:

{{ 表示一个文字 { - 只使用一个,如 '{{"user": "{0.user}", .... 另外,请注意,您不能使用 pass 或任何其他关键字作为一个属性名。

这有助于解决问题。

data = '{{"user": "{0.user}", "pass": "{0.pass}", "code": "123456789"}}'

是正确的方法并且工作正常。

【讨论】:

    猜你喜欢
    • 2018-01-27
    • 2011-07-10
    • 1970-01-01
    • 2019-01-16
    • 2016-08-08
    • 1970-01-01
    • 2014-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多