首页 > 数据库 >python操作MongoDB数据库

python操作MongoDB数据库

时间:2023-04-30 22:33:37浏览次数:47  
标签:python MongoDB 数据库 pymongo db result table data

  • python处理mongodb首选就是pymongo. 首先, 安装一下这个模块

    • pip install pymongo
  • 建立连接

import pymongo

conn = pymongo.MongoClient(host='localhost', port=27017)
# 切换数据库
py = conn['python']
# 登录该数据库(需要的话)
py.authenticate("python_admin", '123456')
# 简单来个查询
result = py["stu"].find()
for r in result:
    print(r)
  • 完整代码
import pymongo
from pymongo import MongoClient


def get_db(database, user, pwd):
    client = MongoClient(host="localhost", port=27017)
    db = client[database]
    # 有账号就加上验证, 没有账号就不用验证
    db.authenticate(user, pwd)
    return db


# 增删改查
# 增加数据
def add_one(table, data):
    db = get_db("python", "python_admin", "123456")
    result = db[table].insert_one(data)
    return result


def add_many(table, data_list):
    db = get_db("python", "python_admin", "123456")
    result = db[table].insert_many(data_list)
    return result.inserted_ids


def upd(table, condition, data):
    db = get_db("python", "python_admin", "123456")
    data = {'hehe': 'hehe', 'meme': 'meme'}
    # result = db[table].update_many(condition, {"$set": data})
    result = db[table].update_many(condition, {'$set':data})
    return result


def delete(table, condition):
    db = get_db("python", "python_admin", "123456")
    result = db[table].remove(condition)
    return result

if __name__ == '__main__':
    # r = add_one("stu", {"name": "西瓜", "age":18})
    # print(r.inserted_id)
    # r = add_many("stu", [{"name": "嘎嘎"},{"name": "咔咔"}])
    # print(r.inserted_ids)

    # result = upd("stu", {"name": 99999}, {"age": 100})
    # print(result)

    result = delete("stu", {"name": "哈哈"})
    print(result)

标签:python,MongoDB,数据库,pymongo,db,result,table,data
From: https://www.cnblogs.com/xwltest/p/17365880.html

相关文章

  • python 列表推导式
    Python列表推导式是一种简洁而强大的语法结构,可以让你更快地创建、转换和过滤Python列表。它在Python中非常常用,并且是Python程序员必须掌握的技能之一。具体而言,列表推导式是使用一行代码创建新列表的方法。这个代码行由三部分组成:表达式、迭代器和可选的过滤器。表达式是一个......
  • python 文件操作(csv和excel大型文件读取)
    使用csv模块首先,我们需要导入csv模块:importcsv读取CSV文件要读取一个CSV文件,可以使用csv.reader()函数。该函数接受一个文件对象作为参数,并返回一个可迭代的行列表。每一行都是一个由列数据组成的列表。例如,如果我们有一个名为data.csv的CSV文件,其中包含以下内容:Name,Age......
  • python 文件操作
    在Python3中,进行文件操作的主要方式是使用内置的open()函数。该函数接受一个文件名和一个模式参数,并返回一个文件对象,我们可以在该对象上执行读取或写入操作。以下是一些常见的文件操作及其示例:打开文件我们可以使用open()函数打开一个文件并获得文件对象。例如,以下代码......
  • 使用docker快速安装mongodb.md
    1.拉取mongodb镜像dockerpullmongo2.创建文件夹mkdir-p/home/mongo/conf/mkdir-p/home/mongo/data/mkdir-p/home/mongo/logs/3.新增mongod.conf文件cd/home/mongo/conf&&vimongod.confmongod.conf文件内容:#数据库文件存储位置dbpath=/data/db#log文......
  • python 模块及引用
    在Python中,模块是一种组织代码的方式。它允许我们将相关的函数、类和变量放在一个文件中,并通过导入该文件来使用其中的代码。Python自带了很多常用的模块,同时我们也可以编写自己的模块。要调用一个模块,我们需要使用import语句。例如,如果我们想使用Python标准库中的math模块,可......
  • Python 斐波那契数列
    概念:斐波那契数列又称黄金分割数列,即:1,1,2,3,5,8,13,21,…,这个数列前两项都是1,从第3项开始,每一项都等于前两项之和。随着数列的增加,前一项与后一项的比值逼近0.6180339887这个黄金分割系数 code:deffiblist(input):fib=[1,1]#第一和第二项固定为值为1......
  • python 高级特性
    Python高级特性列表推导式(Listcomprehension)列表推导式允许您使用简洁的方式创建一个新的列表。它的语法如下:new_list=[expressionforiteminold_listifcondition]其中,expression是新列表中每个元素的计算公式,item是旧列表中的每个元素,condition是可选的条件......
  • python 类的继承
    Python中的类继承可以分为以下几种类型:单继承:一个子类只继承一个父类。多继承:一个子类同时继承多个父类。深度优先继承:在多继承中,如果有多个父类具有相同的方法或属性,则会按照从左到右、深度优先的顺序查找并使用第一个符合要求的父类的方法或属性。方法重写:一个子类......
  • python基础语法
    变量和数据类型#变量名可以由字母、数字、下划线组成,但不能以数字开头name='Lucy'age=18is_student=Truescore=95.5变量:用于存储数据或者引用对象的标识符。数据类型:Python中有多种数据类型,如字符串(str)、整数(int)、布尔值(bool)、浮点数(float)等。控制流语句......
  • python 数据类型
    Python3中有以下常用的数据类型:整型(int):表示整数,例如1、2、3等等。浮点型(float):表示浮点数或实数,例如3.14、0.1等等。字符串型(str):表示文本或字符序列,例如"Hello,world!"。布尔型(bool):表示真或假,只有两个取值True和False。列表型(list):表示可变有序序列,可以包含......