python使用pymongo与MongoDB基本交互操作示例
作者:随风行云 发布时间:2023-11-27 03:33:19
本文实例讲述了python使用pymongo与MongoDB基本交互操作。分享给大家供大家参考,具体如下:
本文内容:
pymongo的使用:
安装模块
导入模块
连接mongod
获取\切换数据库
选择集合
CRUD操作
首发时间:2018-03-18 20:11
pymongo的使用:
安装模块:
pip3 pymongo
导入模块:
import pymongo
连接mongod:
conn=pymongo.MongoClient(host="localhost",port=27017)
获取\切换数据库:
# db=conn.School #获取School数据库 db=conn['School'] #获取School数据库
选择集合:
# collection=db.teacher#选择teacher集合 collection=db['teacher']#选择teacher集合
CRUD操作:【pymongo的方法与mongo的命令基本一致,名字类似的功能也类似,参数可以参考mongo的命令,以及源码说明】
find():返回值是一个Cursor类型的,需要迭代这个返回值才能获取结果
find_one():返回值是查找结果
importpymongo conn=pymongo.MongoClient(host="localhost",port=27017) db=conn['School'] collection=db['teacher'] rel=collection.find() print([r for r in rel]) rel=collection.find({"name":"Alex"}) print([r for r in rel]) # rel=collection.find({"age":{"$gt":20}}) rel=collection.find({"$or":[{"name":"Amy"},{"name":"Alex"}]}) print([r for r in rel]) rel=collection.find_one({"name":"jack"}) print(rel) print(rel['name'])#单个文档情况下可用来取出指定值 conn.close()
查看文档:
插入文档:
insert():插入单条文档,可选,多条文档使用列表插入,已经不建议使用
insert_one():插入单条文档
insert_many():插入多条文档
importpymongo conn=pymongo.MongoClient(host="localhost",port=27017) db=conn['School'] collection=db['teacher'] collection.insert({"name":"Job","course":"career"}) # col.insert(document)#**DEPRECATED** - Use :meth:`insert_one` or :meth:`insert_many` instead.#insert是不推荐用了,建议使用insert_one,insert_many collection.insert_one({"name":"Job1","course":"career1"}) t1={"name":"Job2","course":"career2"} t2={"name":"Job3","course":"career3"}collection.insert_many([t1,t2])conn.close()
修改文档:
update():修改单条或多条文档,由选项multi决定,但已不推荐使用该方法,建议使用update_one()、update_many()
update_one():修改单条文档
update_many():修改多条文档
importpymongo conn=pymongo.MongoClient(host="localhost",port=27017) db=conn['School'] collection=db['teacher'] # rel=collection.update({"name":"Job1"},{ "$set":{"name":"Bob"}})#不推荐使用#collection.update_one({"name":"Job"},{ "$set":{"name":"Bob"}}) collection.update_many({"name":"Job1"},{ "$set":{"name":"Bob"}})conn.close()
删除文档:
remove():删除指定文档,但已经不建议使用,建议使用delete_one和delete_many
delete_one(): 删除符合条件的一条文档
delete_many():删除符合条件的所有文档
importpymongo conn=pymongo.MongoClient(host="localhost",port=27017) db=conn['School'] collection=db['teacher'] # collection.remove({"name":"Bob"})#collection.delete_one({"name":"Bob2"}) collection.delete_many({"name":"Job3"})conn.close()
想了解更多,可以参考pymongo官方文档:http://api.mongodb.com/python/current/api/pymongo/
希望本文所述对大家Python程序设计有所帮助。
来源:https://www.cnblogs.com/progor/p/8597172.html
猜你喜欢
- 本文实例为大家分享了python实现flappy bird的简单代码,供大家参考,具体内容如下import pygamefrom pygam
- 我就废话不多说了,直接上代码吧!import turtleturtle.pensize(5)turtle.pencolor("ye
- 本文解决问题:批量删除多行txt文本中的内容。思路:1.找出需要删除行的 id(就是需要删除那些行,把这是第几行给记录下来。)2.将原文本内
- 函数初解function,是一种语法结构,将实现某一个功能的代码块(多行代码)封装到一个结构中实现代码的重复利用函数定义语法:关键点:fun
- 可以自动轮换的页签 tabs with auto play fucntion<html><head><meta
- 查看表空间的名称及大小代码如下:SQL>select t.tablespace_name, round(sum(bytes/(1024
- 404错误,很多人都知道,如果要访问的url不存在的时候就读取显示这个页面.以往在处理404方面我们通常的做法是要麽简单写几行字,而有心人士
- 或者说有一条命令 hostname [string],当string是不包含2950时,是true,包含2950时是false。使用Exce
- 要读懂这些代码主要是要了解ASP中操作二进制数据的对象ADODB.Stream!本程序主要用的就是Adodb.Stream,如果你有这个基础
- 我就废话不多说了,直接 上代码吧!import kafka.api.PartitionOffsetRequestInfo;import ka
- 本文实例为大家分享了python使用matplotlib画饼状图的具体代码,供大家参考,具体内容如下代码与详细注释from matplotl
- 下面我们以论坛排行榜举例说明:<% @ LANGUAGE="VBSCRIPT" %&
- 前言CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型(注意:
- 本文实例讲述了Django框架基础模板标签与filter使用方法。分享给大家供大家参考,具体如下:一、基本的模板语言1、变量{{ }}1.1
- 先来看看基本的定义:channel是Go语言中的一个核心类型,可以把它看成管道。并发核心单元通过它就可以发送或者接收数据进行通讯,这在一定程
- 前言React核心的单向数据流、一切皆数据的state、不会改变的props,以及状态提升等等经常使用便不多总结,需要的看官方文档。JSXJ
- 1.可以通过settings/dev.py的ALLOWED_HOSTS,设置允许访问# 设置哪些客户端可以通过地址访问到后端 A
- 知道python有这几个内置方法,但一直以来用的都不多,最近重新看了一下,重新记录一下。map()会根据提供的函数对指定序列进行映射,pyt
- 因项目需要,需要使用C#控制台程序执行python脚本,查询各种资料后可以成功调用了,记录一下,以备后面遗忘。只尝试了两种调用方式,第一种只
- 方法一:def commaSpiltList(self, listData): listData = list(listData) strs