mongo与python交互
与python交互
一、准备
1、环境
进入虚拟环境py2_db,安装包pymongo
workon py2_db
pip install pymongo
2、引入模块pymongo
from pymongo import *
3、主要提供如下对象用于进行交互
MongoClient对象:用于与MongoDB服务器建立连接
DataBase对象:对应着MongoDB中的数据库
Collection对象:对应着MongoDB中的集合
Cursor对象:查询方法find()返回的对象,用于进行多行数据的遍历
MongoClient对象
使用init方法创建连接对象
client=MongoClient('主机ip',端口)
Database对象
通过client对象获取获得数据库对象
db=client.数据库名称
Collection对象
通过db对象获取集合对象
col=db.集合名称
Cursor对象
当调用集合对象的find()方法时,会返回Cursor对象
结合for...in...遍历cursor对象
4、主要方法如下
insert_one:加入一条文档对象
insert_many:加入多条文档对象
find_one:查找一条文档对象
find:查找多条文档对象
update_one:更新一条文档对象
update_many:更新多条文档对象
delete_one:删除一条文档对象
delete_many:删除多条文档对象
二、python交互代码
1、增加
方法insert_one接收一个字典作为参数,表示插入一条文档
方法insert_many接收一个列表作为参数,列表中的元素为字典,表示插入多条文档
创建mongodb_insert.py文件,代码如下
#coding=utf-8 from pymongo import * if __name__=='__main__': try: #创建连接对象 client=MongoClient(host='localhost',port=27017) #获得数据库,此处使用python数据库 db=client.python #向集合stu中插入一条文档 db.stu.insert_one({'name':'abc','gender':True}) #如果插入成功则提示ok print 'ok' except Exception as e: print e
2、查询
方法find_one()返回满足条件的文档集中第一条数据,类型为字典
方法find()返回满足条件的所有文档,类型为Cursor对象,可以使用for...in遍历,每项为字典对象
创建mongodb_find.py文件,代码如下
#coding=utf-8 from pymongo import * if __name__=='__main__': try: #创建连接对象 client=MongoClient(host='localhost',port=27017) #获得数据库,此处使用python数据库 db=client.python #查询一条文档 #result=db.stu.find_one() #print result #查询多条文档 result=db.stu.find({'hometown':'大理'}) for item in result: print '%s--%s'%(item['name'],item['hometown']) except Exception, e: print e
3、修改
方法update_one()修改满足条件的文档集中的第一条文档
方法update_many()修改满足条件的文档集中的所有文档
注意:使用$set操作符修改特定属性的值,否则会修改整个文档
创建mongodb_update.py文件,代码如下
#coding=utf-8 from pymongo import * if __name__=='__main__': try: #创建连接对象 client=MongoClient(host='localhost',port=27017) #获得数据库,此处使用python数据库 db=client.python #更新满足条件的第一条文档 #db.stu.update_one({'gender':False},{'$set':{'name':'hehe'}}) #更新满足条件的所有文档 db.stu.update_many({'gender':True},{'$set':{'name':'haha'}}) print 'ok' except Exception as e: print e
4、删除
方法delete_one()删除满足条件的文档集中第一条文档
方法delete_many()删除满足条件的所有文档
创建mongodb_delete.py文件,代码如下
#coding=utf-8 from pymongo import * if __name__=='__main__': try: #创建连接对象 client=MongoClient(host='localhost',port=27017) #获得数据库,此处使用python数据库 db=client.python #删除满足条件的第一条文档 #db.stu.delete_one({'gender':False}) #删除满足条件的所有文档 db.stu.delete_many({'gender':True}) print 'ok' except Exception as e: print e
相关文章
- pycharm自带python环境吗_Python IDE环境之 新版Pycharm安装详细教程[通俗易懂]
- 用 Python 破解了同学压缩文件的密码
- python删除首行_Python删除文件第一行
- Python入门系列(十一)一篇搞定python操作MySQL数据库
- python类型转换astype时间_python dataframe astype 字段类型转换方法
- 【说站】python如何访问字典
- 简述Python特点_python优缺点
- python zipfile_Python 学习入门(16)—— zipfile
- 在python中用来安装第三方库的常用工具_什么库用于安装管理Python扩展包
- python做微信回复机器人_Python自动化脚本
- python交互模式下方向键乱码的正确解决方法
- 使用Python时绝对不应该做什么?
- Python基础语法-内置函数和模块-math模块
- Python交互Redis的实现
- Linux系统crontab定时调度Python脚本详解程序员
- 进程监控的python脚本详解编程语言
- Python正则表达式详解
- Python结合MySQL实现信息交互(python与mysql交互)
- 如何维护关键的 Python 项目
- python用Redis与Python实现大数据收集与分析(redis 联合)
- python编程-将Python程序转化为可执行程序[整理]
- python列表操作使用示例分享
- 教你如何将Sublime3打造成Python/DjangoIDE开发利器
- Python实现的检测web服务器健康状况的小程序