最近几篇文章都是讲的Mongo, 也是想趁这个机会把Mongo的使用的一些技巧总结并分享一下,今天的文章是围绕着Python如何来连接Mongo服务操作MongoDB,如果你正在工作或学习中使用Python并且也正好在使用MongoDB,相信对大家有益处。
我们在使用Python操作MongoDB时需要借助第三方的一个工具库,所以我们需要先安装,命令如下: python -m pip install pymongo (如果你配置好了pip 的环境变量也可用pip install pymongo).
直接上代码,大家可以基于前面文章提到的搭建MongoDB的服务来实战检验一下代码。
代码语言:javascript复制import pymongo
def getcol():
myclient = pymongo.MongoClient('mongodb://127.0.0.1:27017/')#连接mongodb服务
mydb=myclient["admin"] #选择要连接的数据库名
mydb.authenticate("tony","123456")#数据库账号及密码验证
mycollection=mydb["test"]#执行要在操作的集合,不存就创建
print(mydb.list_collection_names())#打印出选择连接的数据库中的表
return mycollection #返回当前连接的集合
def mongo_insert(params): #插入数据
mycol=getcol()
if(type(params)==dict):#判断插入的数据是一条还是多条,dict就是一条,list就是多条
mycol.insert_one(params)
elif(type(params)==list):
mycol.insert_many(params)
def mongo_find(): #查询数据
mycol=getcol()
for doc in mycol.find(): #查询所有数据
print(doc)
for doc in mycol.find({},{"_id":0,"name":1,"age":1}): #查询返回指定字段的数据
print(doc)
myselect={"name":"tony"}
for doc in mycol.find(myselect):#查询返回指定条件的数据
print(doc)
def mongo_delete():#删除集合中的数据
mycol=getcol()
myselect={"name":"tony"}
mycol.delete_one(myselect)#删除单条数据
mycol.delete_many({}) #删除所有数据
def mongo_update():#修改集合中的数据
mycol=getcol()
myselect = {"name": "tony"}#查询条件
newvalue = {"$set": {"age": "35"}}#变更的内容
mycol.update(myselect,newvalue)
if __name__=="__main__":
mydict = {"name": "tony", "age": "22", "sex": "man"}
mylist = [
{"name": "tom", "age": "100", "sex": "man"},
{"name": "jim", "age": "101", "sex": "woman"},
{"name": "lucy", "age": "10", "sex": "woman"},
{"name": "lily", "age": "103", "sex": "woman"},
{"name": "dido", "age": "109", "sex": "man"}
]
mongo_insert(mylist)
mongo_find()
mongo_update()
mongo_delete()
总结:今天的文章是通过Python来实现针对MongoDB的增删改查等操作,这也是最基础的,最实用的操作。
友情提示:“无量测试之道”原创著作,欢迎关注交流,禁止第三方不显示文章来源时转载。