Python OrderedDict的输出有一个单引号,我只希望内部没有单引号

Python OrderedDict的输出有一个单引号,我只希望内部没有单引号,python,json,string,python-3.x,python-requests,Python,Json,String,Python 3.x,Python Requests,所以我尝试在json.dumps()中使用OrderedDict,它一开始运行良好。然而,当试图在HTTP PUT请求的有效负载内直接使用输出时,它周围有这些单引号,我认为这影响了接收端对json的解释方式 那么,我如何绕过这个问题,让它在没有单引号的情况下给我输出呢 例如: out = json.dumps(OrderedDict([("name", 1), ("value", 2)])) 。。。给出如下输出: '{"name": 1, "value": 2}' 。。。当我想要它给我肉的时

所以我尝试在json.dumps()中使用OrderedDict,它一开始运行良好。然而,当试图在HTTP PUT请求的有效负载内直接使用输出时,它周围有这些单引号,我认为这影响了接收端对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知识是自学的,我确信其中存在一些差距

编辑:
打印(输出)

。。。给予

{“名称”:1,“值”:2}

这就是我相信我想要的


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

请求
将为您编码数据。您应该能够将
OrderedDict
直接传递到
post

out = OrderedDict([("name", 1), ("value", 2)])
r = requests.post(url, json=out)
我希望这有帮助


编辑:我意识到这可能对您有所帮助,建议在调用
post
时使用
json
而不是
data

文件:


是啊!我的意思是反应不好,其他的都检查过了。所以它必须是这样的。很明显,你缺少的是返回一个字符串。
'{“name”:1,“value”:2}'
是检查字符串时的显示方式,-
'
只是分隔符,不属于字符串的一部分-错误可能在别处。。。。这就是JSON的全部要点——您以一种严格的格式将数据传输为字符串,以便可以在另一端对其进行解析……值得注意的是,JSON交换格式不提供任何键/值对排序保证。如果键的顺序很重要,则需要使用对象列表而不是单个对象将其序列化为JSON。谢谢!我不是100%确定怎么做(我一定会仔细阅读),但是
json=out
成功了!也许这是关于显式的,这是我知道Python喜欢的。