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 pickle 和 shelve模块的用法
Sep 16 Python
使用Python写一个小游戏
Apr 02 Python
django反向解析和正向解析的方式
Jun 05 Python
pygame实现简易飞机大战
Sep 11 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
Oct 31 Python
详解爬虫被封的问题
Apr 23 Python
使用Python和Prometheus跟踪天气的使用方法
May 06 Python
Python实现Singleton模式的方式详解
Aug 08 Python
python paramiko远程服务器终端操作过程解析
Dec 14 Python
python 求10个数的平均数实例
Dec 16 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
Python 居然可以在 Excel 中画画你知道吗
Feb 15 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内嵌函数用法实例
2015/03/20 PHP
PHP CodeIgniter框架的工作原理研究
2015/03/30 PHP
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
2010/11/25 Javascript
使用Jquery搭建最佳用户体验的登录页面之记住密码自动登录功能(含后台代码)
2011/07/10 Javascript
使用jquery读取html5 localstorage的值的方法
2013/01/04 Javascript
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
js获取域名的方法
2015/01/27 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
2016/04/12 Javascript
js学习阶段总结(必看篇)
2016/06/16 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
bootstrap table表格客户端分页实例
2017/08/07 Javascript
JavaScript数据结构之双向链表定义与使用方法示例
2017/10/27 Javascript
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
angularjs手动识别字符串中的换行符方法
2018/10/02 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
在vue中使用setInterval的方法示例
2019/04/16 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
Python去除字符串两端空格的方法
2015/05/21 Python
Python操作MongoDB详解及实例
2017/05/18 Python
python与C互相调用的方法详解
2017/07/14 Python
Python中py文件引用另一个py文件变量的方法
2018/04/29 Python
解决python "No module named pip" 的问题
2018/10/13 Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
2020/02/26 Python
如何开发一款堪比APP的微信小程序(腾讯内部团队分享)
2016/12/22 HTML / CSS
一款利用html5和css3动画排列人物头像的实例演示
2014/12/05 HTML / CSS
Speedo速比涛德国官方网站:世界领先的泳装品牌
2019/08/26 全球购物
2014新年寄语
2014/01/20 职场文书
员工工作表现评语
2014/04/26 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
法人单位授权委托书范文
2014/10/06 职场文书
golang 生成对应的数据表struct定义操作
2021/04/28 Golang
为什么MySQL选择Repeatable Read作为默认隔离级别
2021/07/26 MySQL
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏