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中列表、字典、元组、集合数据结构整理
Nov 20 Python
进一步理解Python中的函数编程
Apr 13 Python
Python输出9*9乘法表的方法
May 25 Python
python flask实现分页效果
Jun 27 Python
python删除文本中行数标签的方法
May 31 Python
python实现写数字文件名的递增保存文件方法
Oct 25 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
Mar 29 Python
Python中logging日志库实例详解
Feb 19 Python
Python接口自动化判断元素原理解析
Feb 24 Python
基于python实现计算且附带进度条代码实例
Mar 31 Python
Python 程序员必须掌握的日志记录
Aug 17 Python
Python: glob匹配文件的操作
Dec 11 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
Linux下进行MYSQL编程时插入中文乱码的解决方案
2007/03/15 PHP
PHP生成图片验证码、点击切换实例
2014/06/25 PHP
php自动识别文字编码并转换为目标编码的方法
2015/08/08 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
javascript 日期时间 转换的方法
2013/02/21 Javascript
jquery的map与get方法详解
2013/11/04 Javascript
js中switch case循环实例代码
2013/12/30 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
Javascript中With语句用法实例
2015/05/14 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
JS使用贪心算法解决找零问题示例
2017/11/27 Javascript
Vue实现PopupWindow组件详解
2018/04/28 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
vue中如何实现后台管理系统的权限控制的方法示例
2018/09/19 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
对TypeScript库进行单元测试的方法
2019/07/18 Javascript
Node.js API详解之 util模块用法实例分析
2020/05/09 Javascript
JavaScript array常用方法代码实例详解
2020/09/02 Javascript
python自动化测试之从命令行运行测试用例with verbosity
2014/09/28 Python
部署Python的框架下的web app的详细教程
2015/04/30 Python
Python中的下划线详解
2015/06/24 Python
Python Socket实现简单TCP Server/client功能示例
2017/08/05 Python
详解Python安装scrapy的正确姿势
2018/06/26 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
pycharm配置QtDesigner的超详细方法
2021/01/25 Python
在css3中background-clip属性与background-origin属性的用法介绍
2012/11/13 HTML / CSS
实例讲解使用HTML5 Canvas绘制阴影效果的方法
2016/03/25 HTML / CSS
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
西班牙用户之间买卖视频游戏的平台:Wakkap
2020/03/21 全球购物
《小鹰学飞》教学反思
2014/04/23 职场文书
企业形象策划方案
2014/05/29 职场文书
学生检讨书怎么写
2014/10/09 职场文书
元旦晚会主持词开场白
2015/05/28 职场文书
歌咏比赛口号大全
2015/12/25 职场文书
Python四款GUI图形界面库介绍
2022/06/05 Python