三、pymongo操作,用Python操作mongodb

一、pymongo操作


1、Python实例和插入,查找和更新,删除。

from pymongo import MongoClient


class TestMongo:
    # 1、初始化实例和插入
    def __init__(self):
        client = MongoClient(host="127.0.0.1")  # 端口默认27017
        self.test100 = client["test100"]["t100"]

    def test_insert_one(self):
        # insert接受字典,返回objectId
        ret = self.test100.insert({'name': 'demo1', 'age': 23})
        print(ret)

    def test_insert_many(self):
        item_list = [{"name": f"demo{i}"} for i in range(10)]
        # insert_many为一个列表中包含多个字典的数据结构
        t = self.test100.insert_many(item_list)
        # t.inserted_ids为所有插入的id
        for i in t.inserted_ids:
            print(i)

    # 2、查找和更新
    def test_find_ond(self):
        # find_one 查找并返回一个结果,接受一个字典形式的条件
        t = self.test100.find_one({"name":"demo1"})
        print(t)

    def test_find_many(self):
        # find_many返回所有满足条件的结果,如果条件为空,返回数据库所有
        t = self.test100.find()
        # 返回值为游标类型,跟zip()返回的类型相同,只能取一次值
        for i in t:
            print(i)

    def try_update_one(self):
        self.test100.update_one({"name":'demo1'}, {'$set':{'name':'new_demo1'}})

    def try_update_many(self):
        self.test100.update_many({"name":'demo1'}, {'$set':{'name':'new_demo1'}})

    # 3、删除
    def try_delete_one(self):
        self.test100.delete_one({"name":'new_demo1'})

    def try_delete_many(self):
        self.test100.delete_many({'name':"demo1"})

a = TestMongo()
# a.test_insert_one()
# a.test_insert_many()
# a.test_find_ond()
# a.test_find_many()
# a.try_delete_many()
# a.try_update_one()
# a.try_delete_one()

# a.test_insert_one()
# a.test_insert_one()
# a.try_delete_many()
# a.test_find_many()     

问题:

python同时删除多个name

你可能感兴趣的:(数据库,mongodb)