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实现手写数字识别的具体代码,供大家参考,具体内容如下import numpyimport scipy.spe
- 直接调用系统的颜色显示在网页上本来是件很好玩滴事,但是,也有个缺点,就是可用的色太少 比如Bindows在它的启动画面一点点应用。=。= 上
- 本文介绍了python 支持向量机非线性回归SVR模型,废话不多说,具体如下:import numpy as npimport matplo
- 在python中利用numpy array进行数据处理,经常需要找出符合某些要求的数据位置,有时候还需要对这些位置重新赋值。这里总结了几种找
- 这篇文章主要介绍了如何基于Python实现数字类型转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- 问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式
- 在了解了XHTML 2的进展之后,我们再来看看X/HTML 5 的进展。X/HTML 5酷在什么地方章节元素的构想X/HTML 5引入新的元
- 一般来说,pytorch 的Parameter是一个tensor,但是跟通常意义上的tensor有些不一样1) 通常意义上的tensor 仅
- 1)对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2)应尽量避免在 where 子
- 简介pandas中的DF数据类型可以像数据库表格一样进行groupby操作。通常来说groupby操作可以分为三部分:分割数据,应用变换和和
- 看到php的错误日志里有些这样的提示: [27-Aug-2011 22:26:12] PHP Warning: Cannot use a s
- 就我个人经验来讲:除了oracle,没有比HP 客户支持中心更糟糕的体验了。刚买不到一个月的HP MINI笔记本,莫名其妙键盘上的引号键松动
- 前言在微信小程序开发中,navigator 用来实现页面路由功能,比如 A页面 中点击页面打开B页面1 navigator 默认方式打开新的
- 前言 作者: 罗昭成PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://note.youdao.com/not
- 场景针对园区停车信息,需要对各个公司提供的停车数据进行整合并录入自家公司的大数据平台数据的录入无外乎就是对数据的增删改查下面上一个常规的写法
- 前言:在使用DDT数据驱动+HTMLTestRunner输出测试报告时遇到过2个问题:1、生成的测试报告中,用例名称后有dict() -&g
- 本文实例讲述了php延迟静态绑定的方法。分享给大家供大家参考。具体分析如下:php延迟静态绑定:指类的self,不是以定义时为准,而是以计算
- 一、用属性替代 getter 或 setter 方法以下代码中包含手动实现的 getter(get_ohms) 和 setter(set_o
- 这篇文章主要介绍了python Jupyter运行时间实例过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价
- Python项目中很多时候会需要将时间在Datetime格式和TimeStamp格式之间转化,又或者你需要将UTC时间转化为本地时间,本文总