Python之MongoDB实操

欢迎关注【无量测试之道】公众号,回复【领取资源】,
Python编程学习资源干货、
Python+Appium框架APP的UI自动化、
Python+Selenium框架Web的UI自动化、
Python+Unittest框架API自动化、

资源和代码 免费送啦~
文章下方有公众号二维码,可直接微信扫一扫关注即可。

 

最近几篇文章都是讲的Mongo, 也是想趁这个机会把Mongo的使用的一些技巧总结并分享一下,今天的文章是围绕着Python如何来连接Mongo服务操作MongoDB,如果你正在工作或学习中使用Python并且也正好在使用MongoDB,相信对大家有益处。

我们在使用Python操作MongoDB时需要借助第三方的一个工具库,所以我们需要先安装,命令如下:
python -m pip install pymongo (如果你配置好了pip 的环境变量也可用pip install pymongo).


直接上代码,大家可以基于前面文章提到的搭建MongoDB的服务来实战检验一下代码。

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的增删改查等操作,这也是最基础的,最实用的操作。

备注:我的个人公众号已正式开通,致力于测试技术的分享,包含:大数据测试、功能测试,测试开发,API接口自动化、测试运维、UI自动化测试等,微信搜索公众号:“无量测试之道”,或扫描下方二维码:

 添加关注,一起共同成长吧。

猜你喜欢

转载自blog.csdn.net/weixin_41754309/article/details/107177744