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单链表实现代码实例
Nov 21 Python
Python中集合类型(set)学习小结
Jan 28 Python
Python实现的本地文件搜索功能示例【测试可用】
May 30 Python
Python之两种模式的生产者消费者模型详解
Oct 26 Python
在scrapy中使用phantomJS实现异步爬取的方法
Dec 17 Python
Python统计一个字符串中每个字符出现了多少次的方法【字符串转换为列表再统计】
May 05 Python
详解Python利用random生成一个列表内的随机数
Aug 21 Python
Python 3.6打包成EXE可执行程序的实现
Oct 18 Python
pyqt5 QlistView列表显示的实现示例
Mar 24 Python
python 线程的五个状态
Sep 22 Python
如何基于python实现年会抽奖工具
Oct 20 Python
matplotlib绘制多子图共享鼠标光标的方法示例
Jan 08 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
PHP获取MySql新增记录ID值的3种方法
2014/06/24 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
php一维二维数组键排序方法实例总结
2014/11/13 PHP
Gambit vs CL BO3 第二场 2.13
2021/03/10 DOTA
浅谈Jquery核心函数
2015/06/18 Javascript
JavaScript实现鼠标点击导航栏变色特效
2017/02/08 Javascript
JavaScript基本类型值-Number类型
2017/02/24 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
Vue代码分割懒加载的实现方法
2017/11/23 Javascript
JS中双击和单击事件冲突的解决方法
2018/04/09 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
2018/04/18 jQuery
教你如何用node连接redis的示例代码
2018/07/12 Javascript
uni-app如何实现增量更新功能
2020/01/03 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
Openlayers学习之地图比例尺控件
2020/09/28 Javascript
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
Python使用turtule画五角星的方法
2015/07/09 Python
Python的math模块中的常用数学函数整理
2016/02/04 Python
浅谈django model的get和filter方法的区别(必看篇)
2017/05/23 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
python3实现windows下同名进程监控
2018/06/21 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
python 微信好友特征数据分析及可视化
2020/01/07 Python
python3正则模块re的使用方法详解
2020/02/11 Python
django 实现手动存储文件到model的FileField
2020/03/30 Python
深入了解Python 变量作用域
2020/07/24 Python
Python连接Mysql进行增删改查的示例代码
2020/08/03 Python
交通安全标语
2014/06/06 职场文书
2015年电话销售工作总结范文
2015/04/20 职场文书
2015年中学团委工作总结
2015/07/22 职场文书
孩子满月酒答谢词
2015/09/30 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书
Python实现生成bmp图像的方法
2021/06/13 Python
浅谈Redis中的RDB快照
2021/06/29 Redis
win10如何更改appdata文件夹的默认位置?
2022/07/15 数码科技