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返回真假值(True or False)小技巧
Apr 10 Python
详解Django框架中的视图级缓存
Jul 23 Python
Django入门使用示例
Dec 12 Python
对Python 文件夹遍历和文件查找的实例讲解
Apr 26 Python
实例讲解python中的协程
Oct 08 Python
Python3 SSH远程连接服务器的方法示例
Dec 29 Python
Python函数返回不定数量的值方法
Jan 22 Python
Python closure闭包解释及其注意点详解
Aug 28 Python
Python笔记之代理模式
Nov 20 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
Mar 23 Python
python实现梯度下降和逻辑回归
Mar 24 Python
解决IDEA翻译插件Translation报错更新TTK失败不能使用
Apr 24 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
codeigniter框架批量插入数据
2014/01/09 PHP
php结合ACCESS的跨库查询功能
2015/06/12 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
Javascript实现视频轮播在pc端与移动端均可
2013/09/29 Javascript
javascript验证只能输入数字和一个小数点示例
2013/10/21 Javascript
window.open 以post方式传递参数示例代码
2014/02/27 Javascript
单击按钮发送验证码,出现倒计时的简单实例
2017/03/17 Javascript
Vue中计算属性computed的示例解读
2017/07/26 Javascript
JS中promise化微信小程序api
2018/04/12 Javascript
浅谈vue同一页面中拥有两个表单时,的验证问题
2018/09/18 Javascript
JavaScript之数组扁平化详解
2019/06/03 Javascript
vue+django实现一对一聊天功能的实例代码
2019/07/17 Javascript
解决vue-router 切换tab标签关闭时缓存问题
2020/07/22 Javascript
TypeScript魔法堂之枚举的超实用手册
2020/10/29 Javascript
[01:27:43]VGJ.S vs TNC Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
深入讨论Python函数的参数的默认值所引发的问题的原因
2015/03/30 Python
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
2017/07/30 Python
Django学习教程之静态文件的调用详解
2018/05/08 Python
python3下载抖音视频的完整代码
2019/06/05 Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
2020/07/01 Python
Python Opencv轮廓常用操作代码实例解析
2020/09/01 Python
Python读写Excel表格的方法
2021/03/02 Python
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
网络安全方面的面试题
2016/01/07 面试题
狼和鹿教学反思
2014/02/05 职场文书
课外活动总结
2015/02/04 职场文书
单位更名证明
2015/06/18 职场文书
关于分班的感言
2015/08/04 职场文书
诚信教育主题班会
2015/08/13 职场文书
大学迎新生欢迎词
2015/09/29 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
意外事故赔偿协议书
2016/03/22 职场文书
年终工作总结范文
2019/06/20 职场文书
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python
Java 深入探究讲解简单工厂模式
2022/04/07 Java/Android