python使用pymongo与MongoDB基本交互操作示例


Posted in Python onApril 09, 2020

本文实例讲述了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():返回值是查找结果
      • python使用pymongo与MongoDB基本交互操作示例
        import
        pymongo 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():插入多条文档
        import
        pymongo 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():修改多条文档
      • import
        pymongo 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():删除符合条件的所有文档
      • import
        pymongo 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使用pymongo与MongoDB基本交互操作示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
用python实现的可以拷贝或剪切一个文件列表中的所有文件
Apr 30 Python
python解析中国天气网的天气数据
Mar 21 Python
python基础教程之序列详解
Aug 29 Python
详解Python中for循环的使用
Apr 14 Python
Python实现扣除个人税后的工资计算器示例
Mar 26 Python
python 巧用正则寻找字符串中的特定字符的位置方法
May 02 Python
Django添加feeds功能的示例
Aug 07 Python
python通过paramiko复制远程文件及文件目录到本地
Apr 30 Python
利用python和百度地图API实现数据地图标注的方法
May 13 Python
通过python实现弹窗广告拦截过程详解
Jul 10 Python
python selenium实现发送带附件的邮件代码实例
Dec 10 Python
为什么python比较流行
Jun 19 Python
使用Python和百度语音识别生成视频字幕的实现
Apr 09 #Python
利用Python制作动态排名图的实现代码
Apr 09 #Python
使用python接受tgam的脑波数据实例
Apr 09 #Python
解决使用python print打印函数返回值多一个None的问题
Apr 09 #Python
Python 实现自动完成A4标签排版打印功能
Apr 09 #Python
python网络编程:socketserver的基本使用方法实例分析
Apr 09 #Python
Python使用扩展库pywin32实现批量文档打印实例
Apr 09 #Python
You might like
第4章 数据处理-php数组的处理-郑阿奇
2011/07/04 PHP
php实现refresh刷新页面批量导入数据的方法
2014/12/23 PHP
php将html转成wml的WAP标记语言实例
2015/07/08 PHP
php查找字符串中第一个非0的位置截取
2017/02/27 PHP
PHP模糊查询技术实例分析【附源码下载】
2019/03/07 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
Laravel框架查询构造器 CURD操作示例
2019/09/04 PHP
JavaScript实现QueryString获取GET参数的方法
2013/07/02 Javascript
javascript函数重载解决方案分享
2014/02/19 Javascript
JavaScript中的标签语句用法分析
2015/02/10 Javascript
浅析JavaScript访问对象属性和方法及区别
2015/11/16 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
2016/08/01 Javascript
AngularJS 工作原理详解
2016/08/18 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
深入Vue-Router路由嵌套理解
2018/08/13 Javascript
p5.js实现简单货车运动动画
2019/10/23 Javascript
webpack4 optimization使用总结
2019/11/10 Javascript
vue中watch和computed为什么能监听到数据的改变以及不同之处
2019/12/27 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
JS面试题中深拷贝的实现讲解
2020/05/07 Javascript
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
详解python中的闭包
2020/09/07 Python
SportsDirect.com马来西亚:英国第一体育零售商
2018/11/21 全球购物
Chupi官网:在爱尔兰手工制作的订婚、结婚戒指和精美珠宝
2020/09/28 全球购物
财务管理专业应届毕业生求职信
2013/09/22 职场文书
创新比赛获奖感言
2014/02/13 职场文书
陈欧的广告词
2014/03/18 职场文书
村级换届选举方案
2014/05/10 职场文书
2014年安全生产目标责任书
2014/07/23 职场文书
公司财务部岗位职责
2015/04/14 职场文书
工程款申请报告
2015/05/15 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技