python mongodb操作

本文通过一个具体的示例介绍了如何使用Python操作MongoDB数据库,包括连接数据库、插入数据、查找数据、更新数据以及删除数据等基本操作。示例中定义了一个书籍类并实现了将对象转换为字典的功能,便于进行数据库操作。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from pymongo import MongoClient

settings = {
    "ip": "172.28.xx.xxx",  # ip
    "port": 27117,  # 端口
    "db_name": "wangzs",  # 数据库名字
    "set_name": "books"  # 集合名字
}


class Book():
    def __init__(self, title, content):
        self.title = title
        self.content = content

def convert_to_dict(obj):
  '''把Object对象转换成Dict对象'''
  dict = {}
  dict.update(obj.__dict__)
  return dict

class MyMongoDB(object):
    def __init__(self):
        try:
            self.conn = MongoClient(settings["ip"], settings["port"])
        except Exception as e:
            print(e)
        self.db = self.conn[settings["db_name"]]
        self.my_set = self.db[settings["set_name"]]

    def insert(self, dic):
        print("insert...")
        self.my_set.insert(dic)

    def update(self, dic, newdic):
        print("update...")
        self.my_set.update(dic, newdic)

    def delete(self, dic):
        print("delete...")
        self.my_set.remove(dic)

    def dbfind(self, dic={}):
        print("find...")
        data = self.my_set.find(dic)
        for result in data:
            print(result)


if __name__ == "__main__":
    dic = {"name": "zhangsan", "age": 18}
    mongo = MyMongoDB()
    mongo.dbfind()
    mongo.insert(dic)
    mongo.dbfind({"name": "zhangsan"})

    mongo.update({"name": "zhangsan"}, {"$set": {"age": "25"}})
    mongo.dbfind({"name": "zhangsan"})

    mongo.delete({"name": "zhangsan"})
    mongo.dbfind({"name": "zhangsan"})

    print("--插入对象--")
    book = Book("python教程","入门的好书")
    mongo.insert(convert_to_dict(book))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值