使用pymongo命令

时间:2018-06-12 17:15:03

标签: python json pymongo quotes

我正在尝试接受用户输入,创建一个URI,并在Pymongo中添加一个集合,但每当我尝试这样做时,格式搞砸了,我无法弄清楚如何修复它。 运行时:

print(db.command("create", "storage", someStorage={ "URI": {FS_URI}}))

其中“存储”是集合, 我希望对象是{“fs”:“something:// a:b”}或{'fs':'something:// a:b'}

 FS_URI = ('\"fs\" : \"'+URI+'\"')

给出错误:无法编码对象:{'“fs”:“something:// a:b”'}

FS_URI = ("fs\" : \"%s" % URI)

给出错误“无法编码对象:{'fs”:“something:// a:b'}

FS_URI = ("fs\' : \'%s" % URI)

给出错误“无法编码对象:{”fs':'something:// a:b“}

引号总是不匹配,或者在它们周围有额外的引号。 我已经尝试使用我想要的引用格式的实际URI命令,并且运行完美。

1 个答案:

答案 0 :(得分:0)

我发现使用dict通过更改

解决了这个问题
FS_URI = ("fs\" : \"%s" % URI)

到JSON对象而不是字符串:

FS_URI = {"fs": "{}".format(URI)}

解决了这个问题