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编写vim插件的简单示例
Apr 17 Python
Python递归遍历列表及输出的实现方法
May 19 Python
Python使用Pycrypto库进行RSA加密的方法详解
Jun 06 Python
Python实现读取txt文件并画三维图简单代码示例
Dec 09 Python
python使用xpath中遇到:到底是什么?
Jan 04 Python
Python使用装饰器进行django开发实例代码
Feb 06 Python
python 定时修改数据库的示例代码
Apr 08 Python
详解Django将秒转换为xx天xx时xx分
Sep 27 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
pycharm 2019 最新激活方式(pycharm破解、激活)
Sep 22 Python
Python txt文件如何转换成字典
Nov 03 Python
python+flask编写一个简单的登录接口
Nov 13 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中的foreach问题
2013/06/30 PHP
PHP类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
PHP+MySQL高并发加锁事务处理问题解决方法
2018/04/30 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
JavaScript字符串插入、删除、替换函数使用示例
2013/07/25 Javascript
21个值得收藏的Javascript技巧
2014/02/04 Javascript
js实现遮罩层弹出框的方法
2015/01/15 Javascript
JavaScript接口的实现三种方式(推荐)
2016/06/14 Javascript
js代码实现下拉菜单【推荐】
2016/12/15 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
微信小程序对接七牛云存储的方法
2017/07/30 Javascript
浅谈Vuejs Prop基本用法
2017/08/17 Javascript
jQuery替换节点元素的操作方法
2018/03/18 jQuery
用react-redux实现react组件之间数据共享的方法
2018/06/08 Javascript
nodejs 使用nodejs-websocket模块实现点对点实时通讯
2018/11/28 NodeJs
vue组件中iview的modal组件爬坑问题之modal的显示与否应该是使用v-show
2019/04/12 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
[01:06:32]DOTA2上海特级锦标赛D组资格赛#1 EG VS VP第一局
2016/02/28 DOTA
Python中用memcached来减少数据库查询次数的教程
2015/04/07 Python
在python里协程使用同步锁Lock的实例
2019/02/19 Python
python 利用pyttsx3文字转语音过程详解
2019/09/25 Python
解决python-docx打包之后找不到default.docx的问题
2020/02/13 Python
悬挂训练绳:TRX
2017/12/14 全球购物
兰蔻法国官方网站:Lancôme法国
2020/02/22 全球购物
函授大专自我鉴定
2013/11/01 职场文书
经典优秀个人求职信分享
2013/12/12 职场文书
预备党员的自我评价
2014/03/12 职场文书
高中教师考核方案
2014/05/18 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
学校通报表扬范文
2015/05/04 职场文书
悬崖上的金鱼姬观后感
2015/06/15 职场文书
利用python做表格数据处理
2021/04/13 Python
Python 中的单分派泛函数你真的了解吗
2021/06/22 Python
JavaScript中isPrototypeOf函数
2021/11/07 Javascript
python疲劳驾驶困倦低头检测功能的实现
2022/04/04 Python
Nginx反向代理、重定向
2022/04/13 Servers