OrderedDict的输出有单引号,我只需要内部没有单引号

2024-10-02 20:37:05 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我试着在里面使用OrderedDictjson.dumps文件()一开始效果不错。然而,当试图在httpput请求的有效负载内直接使用输出时,它周围有这些单引号,我认为这与接收端解释json的方式有关。你知道吗

那么,我如何绕过这个问题,让它给我的输出没有单引号?你知道吗

示例:

out = json.dumps(OrderedDict([("name", 1), ("value", 2)]))

。。。给出如下输出:

'{"name": 1, "value": 2}'

。。。当我想要它给我肉的时候,json,比如:

{"name": 1, "value": 2}

。。。这样我就可以把它直接放进我的电脑里

r = requests.post(url, data = out)

。。。在我快乐的路上。你知道吗

旁白:关于字符串和字符串文字(不管是什么)有什么我完全不知道的东西吗?我的Python知识是自学的,我确信有一些差距。你知道吗

编辑: print(out)

。。。给予

{"name": 1, "value": 2}

这就是我想要的。你知道吗

EDIT2:json = out正如所选答案中提到的那样做了诀窍谢谢!但是,由于我刚刚开始用Python编写代码,我很想知道您是否遇到过任何对我来说很方便的文章/文档,以便将来避免类似的问题。再次感谢大家!你知道吗


Tags: 文件字符串namejson示例value方式out
1条回答
网友
1楼 · 发布于 2024-10-02 20:37:05

requests将为您编码数据。您应该能够将OrderedDict直接传递给post

out = OrderedDict([("name", 1), ("value", 2)])
r = requests.post(url, json=out)

我希望这有帮助。你知道吗


编辑:我意识到有another answer可能会对你有所帮助,建议在调用post时使用json而不是data。你知道吗

文件:

http://docs.python-requests.org/en/master/user/quickstart/#more-complicated-post-requests

相关问题 更多 >