Mongodb 如何通过pymongo与mongouri建立正确的连接?

Mongodb 如何通过pymongo与mongouri建立正确的连接?,mongodb,Mongodb,我不知道如何通过URI将MongoDB正确地连接到pymongo(版本>3)。两种类型的脚本列表如下所示,类型B可以正确运行.find(),但类型A不能。如何修改类型A中的代码才能工作 A类: uri = "mongodb://{}:{}@{}:{}".format(username, password, host, port) for k in ["A","B","C"]: exec "{}_uri = '{}/{}_{}'".format(k, uri, k, envname)

我不知道如何通过URI将MongoDB正确地连接到pymongo(版本>3)。两种类型的脚本列表如下所示,类型B可以正确运行.find(),但类型A不能。如何修改类型A中的代码才能工作

A类:

uri = "mongodb://{}:{}@{}:{}".format(username, password, host, port)
for k in ["A","B","C"]:
    exec "{}_uri = '{}/{}_{}'".format(k, uri, k, envname)
    exec "db_{} = MongoClient({}_uri)".format(k, k)
B类:

connection = MongoClient(host, port)
for k in ["A","B","C"]:
    exec "db_{} = connection.{}_{}".format(k, k, envname)
    exec "db_{}.authenticate(username, password)".format(k)

为什么要使用
exec
?@user3100115谢谢。dbs共享相同的用户名和密码。我是python的新手,如何写得更好?@JST谢谢,类型B来自官方链接,可能是
客户端。需要_数据库。authenticate('user','password')
用户
密码
已在uri中设置。为什么要使用
exec
?@user3100115谢谢。dbs共享相同的用户名和密码。我是python的新手,如何写得更好?@JST谢谢,类型B来自官方链接,可能是
客户端。需要_数据库。authenticate('user','password')
用户
密码
已在uri中设置。