Python操作MongoDB数据库的方法示例


Posted in Python onJanuary 04, 2018

本文实例讲述了Python操作MongoDB数据库的方法。分享给大家供大家参考,具体如下:

>>> import pymongo
>>> client=pymongo.MongoClient ('localhost',27017)
>>> db=client.students
>>> db.collection_names()
['students']
>>> students=db.students
>>> students.find()
<pymongo.cursor.Cursor object at 0x0000017A74305FD0>
>>> for item in students.find():
  print(item)
{'_id': ObjectId('59394a87ae09c56bd9c1d375'), 'name': 'zhangsan', 'age': 18.0, 'sex': 'male'}
>>> wangwu={'name':'wangwu','age':20,'sex':'male'}
>>> students.insert(wangwu)
ObjectId('593a7c5fedb5a1abeb757052')
>>> for item in students.find({'name':'wangwu'}):
  print(item)
{'_id': ObjectId('593a7c5fedb5a1abeb757052'), 'name': 'wangwu', 'age': 20, 'sex': 'male'}
>>> students.find_one()
{'_id': ObjectId('59394a87ae09c56bd9c1d375'), 'name': 'zhangsan', 'age': 18.0, 'sex': 'male'}
>>> students.find_one({'name':'wangwu'})
{'_id': ObjectId('593a7c5fedb5a1abeb757052'), 'name': 'wangwu', 'age': 20, 'sex': 'male'}
>>> students.find().count()
2
>>> students.remove({'name':'wangwu'})
{'ok': 1, 'n': 1}
>>> for item in students.find():
  print(item)
{'_id': ObjectId('59394a87ae09c56bd9c1d375'), 'name': 'zhangsan', 'age': 18.0, 'sex': 'male'}
>>> students.find().count()
1
>>> students.create_index([('name',pymongo.ASCENDING)])
'name_1'
>>> students.update({'name':'zhangsan'},{'$set':{'age':25}})
{'ok': 1, 'nModified': 1, 'n': 1, 'updatedExisting': True}
>>> students.find_one()
{'_id': ObjectId('59394a87ae09c56bd9c1d375'), 'name': 'zhangsan', 'age': 25, 'sex': 'male'}
>>> students.update({'age':25},{'$set':{'sex':'Female'}})
{'ok': 1, 'nModified': 1, 'n': 1, 'updatedExisting': True}
>>> students.remove()
{'ok': 1, 'n': 1}
>>> students.find().count()
0
>>> zhangsan={'name':'zhangsan','age':25,'sex':'Male'}
>>> lisi={'name':'lisi','age':21,'sex':'Male'}
>>> wangwu={'name':'wangwu','age':22,'sex':'Female'}
>>> students.insert_many([zhangsan,lisi,wangwu])
<pymongo.results.InsertManyResult object at 0x0000017A749FC5E8>
>>> for item in students.find().sort('name',pymongo.ASCENDING):
  print(item)
{'_id': ObjectId('593a806bedb5a1abeb757054'), 'name': 'lisi', 'age': 21, 'sex': 'Male'}
{'_id': ObjectId('593a806bedb5a1abeb757055'), 'name': 'wangwu', 'age': 22, 'sex': 'Female'}
{'_id': ObjectId('593a806bedb5a1abeb757053'), 'name': 'zhangsan', 'age': 25, 'sex': 'Male'}
>>> for item in students.find().sort([('sex',pymongo.DESCENDING),('name',pymongo.ASCENDING)]):
  print(item)
{'_id': ObjectId('593a806bedb5a1abeb757054'), 'name': 'lisi', 'age': 21, 'sex': 'Male'}
{'_id': ObjectId('593a806bedb5a1abeb757053'), 'name': 'zhangsan', 'age': 25, 'sex': 'Male'}
{'_id': ObjectId('593a806bedb5a1abeb757055'), 'name': 'wangwu', 'age': 22, 'sex': 'Female'}
>>>

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

Python 相关文章推荐
介绍Python的@property装饰器的用法
Apr 28 Python
Python备份目录及目录下的全部内容的实现方法
Jun 12 Python
基于Python 装饰器装饰类中的方法实例
Apr 21 Python
Python实现计算圆周率π的值到任意位的方法示例
May 08 Python
Python迭代器与生成器用法实例分析
Jul 09 Python
python实现Flappy Bird源码
Dec 24 Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
Apr 29 Python
解决python文件双击运行秒退的问题
Jun 24 Python
python画图把时间作为横坐标的方法
Jul 07 Python
python 实现识别图片上的数字
Jul 30 Python
python 实现视频 图像帧提取
Dec 10 Python
Django模型层实现多表关系创建和多表操作
Jul 21 Python
Python字典操作详细介绍及字典内建方法分享
Jan 04 #Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
Jan 04 #Python
Python给你的头像加上圣诞帽
Jan 04 #Python
Python编程实现线性回归和批量梯度下降法代码实例
Jan 04 #Python
Python语言描述随机梯度下降法
Jan 04 #Python
微信小程序跳一跳游戏 python脚本跳一跳刷高分技巧
Jan 04 #Python
python使用xpath中遇到:到底是什么?
Jan 04 #Python
You might like
一个简易需要注册的留言版程序
2006/10/09 PHP
laravel异步监控定时调度器实例详解
2019/06/21 PHP
laravel框架数据库配置及操作数据库示例
2019/10/10 PHP
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
jQuery Ajax页面局部加载方法汇总
2016/06/02 Javascript
JavaScript与java语言有什么不同
2016/09/22 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
2017/12/20 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
vue项目中jsonp跨域获取qq音乐首页推荐问题
2018/05/30 Javascript
jQuery 导航自动跟随滚动的实现代码
2018/05/30 jQuery
Egg Vue SSR 服务端渲染数据请求与asyncData
2019/11/24 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
Js和VUE实现跑马灯效果
2020/05/25 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
python实现简单ftp客户端的方法
2015/06/28 Python
详解flask入门模板引擎
2018/07/18 Python
Python通过for循环理解迭代器和生成器实例详解
2019/02/16 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
python+opencv边缘提取与各函数参数解析
2020/03/09 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
python中re模块知识点总结
2021/01/17 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
美国家庭鞋店:Shoe Sensation
2019/09/27 全球购物
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
英国发展最快的在线超市之一:Click Marketplace
2021/02/15 全球购物
中学生个人自我评价
2014/02/06 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
趣味运动会广播稿
2015/08/19 职场文书
导游词之无锡梅园
2019/11/28 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python
Vue 打包后相对路径的引用问题
2022/06/05 Vue.js