python连接mongodb数据库操作数据示例


Posted in Python onNovember 30, 2020

作者: wyh草样

出处:https://www.cnblogs.com/wyh0923/p/14047466.html

1、数据库配置类 MongoDBConn.py

#encoding=utf-8
'''

Mongo Conn连接类
'''

import pymongo

class DBConn:
  conn = None
  servers = "mongodb://localhost:27017"

  def connect(self):
    self.conn = pymongo.Connection(self.servers)

  def close(self):
    return self.conn.disconnect()

  def getConn(self):
    return self.conn

2、ngoDemo.py 类

#encoding=utf-8
'''

Mongo操作Demo
Done:
'''
import MongoDBConn

dbconn = MongoDBConn.DBConn()
conn = None
lifeba_users = None

def process():
  #建立连接
  dbconn.connect()
  global conn
  conn = dbconn.getConn()

  #列出server_info信息
  print conn.server_info()

  #列出全部数据库
  databases = conn.database_names()
  print databases

  #删除库和表
  dropTable()
  #添加数据库lifeba及表(collections)users
  createTable()
  #插入数据
  insertDatas()
  #更新数据
  updateData()
  #查询数据
  queryData()
  #删除数据
  deleteData()

  #释放连接
  dbconn.close()

def insertDatas():
  datas=[{"name":"steven1","realname":"测试1","age":25},
      {"name":"steven2","realname":"测试2","age":26},
      {"name":"steven1","realname":"测试3","age":23}]
  lifeba_users.insert(datas)

def updateData():
  '''只修改最后一条匹配到的数据
      第3个参数设置为True,没找到该数据就添加一条
      第4个参数设置为True,有多条记录就不更新
  '''
  lifeba_users.update({'name':'steven1'},{'$set':{'realname':'测试1修改'}}, False,False)

def deleteData():
  lifeba_users.remove({'name':'steven1'})

def queryData():
  #查询全部数据
  rows = lifeba_users.find()
  printResult(rows)
  #查询一个数据
  print lifeba_users.find_one()
  #带条件查询
  printResult(lifeba_users.find({'name':'steven2'}))
  printResult(lifeba_users.find({'name':{'$gt':25}}))

def createTable():
  '''创建库和表'''
  global lifeba_users
  lifeba_users = conn.lifeba.users

def dropTable():
  '''删除表'''
  global conn
  conn.drop_database("lifeba")

def printResult(rows):
  for row in rows:
    for key in row.keys():#遍历字典
      print row[key], #加, 不换行打印
    print ''

if __name__ == '__main__':
  process()

以上就是python连接mongodb数据库操作数据示例的详细内容,更多关于python连接mongodb的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python yield使用方法示例
Dec 04 Python
最大K个数问题的Python版解法总结
Jun 16 Python
python 常用的基础函数
Jul 10 Python
python中类的属性和方法介绍
Nov 27 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 Python
django自定义非主键自增字段类型详解(auto increment field)
Mar 30 Python
Django values()和value_list()的使用
Mar 31 Python
python针对Oracle常见查询操作实例分析
Apr 30 Python
解析python 类方法、对象方法、静态方法
Aug 15 Python
python基于turtle绘制几何图形
Jun 15 Python
详解如何用Python实现感知器算法
Jun 18 Python
解决Python保存文件名太长OSError: [Errno 36] File name too long
May 11 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
Nov 30 #Python
Python命令行参数定义及需要注意的地方
Nov 30 #Python
用sleep间隔进行python反爬虫的实例讲解
Nov 30 #Python
Python基于Faker假数据构造库
Nov 30 #Python
python爬虫调度器用法及实例代码
Nov 30 #Python
python爬虫中url管理器去重操作实例
Nov 30 #Python
python爬虫中的url下载器用法详解
Nov 30 #Python
You might like
php自定义加密与解密程序实例
2014/12/31 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
2015/07/04 PHP
Yii2中使用join、joinwith多表关联查询
2016/06/30 PHP
Laravel学习基础之migrate的使用教程
2017/10/11 PHP
PHP让数组中有相同值的组成新的数组实例
2017/12/31 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
Js数组的操作push,pop,shift,unshift等方法详细介绍
2012/12/28 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
vue router学习之动态路由和嵌套路由详解
2017/09/21 Javascript
Angular6 正则表达式允许输入部分中文字符
2018/09/10 Javascript
JavaScript进阶(三)闭包原理与用法详解
2020/05/09 Javascript
Vue使用预渲染代替SSR的方法
2020/07/02 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
2020/11/03 Javascript
如何在vue 中引入使用jquery
2020/11/10 jQuery
Python中查看文件名和文件路径
2017/03/31 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
Django用户认证系统 User对象解析
2019/08/02 Python
使用python创建生成动态链接库dll的方法
2020/05/09 Python
Python特殊属性property原理及使用方法解析
2020/10/09 Python
美国一家专业的太阳镜网上零售商:Solstice太阳镜
2016/07/25 全球购物
为世界各地的女性设计和生产时尚服装:ROMWE
2016/09/17 全球购物
Delphi工程师笔试题
2013/09/21 面试题
销售实习自我鉴定
2013/12/07 职场文书
给朋友的道歉信
2014/01/09 职场文书
读书活动实施方案
2014/03/10 职场文书
森林防火标语
2014/06/23 职场文书
纪念九一八事变演讲稿:青少年应树立远大理想
2014/09/14 职场文书
学生未请假就回家检讨书
2014/09/22 职场文书
财务总监岗位职责
2015/02/03 职场文书
农村老人去世追悼词
2015/06/23 职场文书
小学运动会前导词
2015/07/20 职场文书
2019大学毕业晚会主持词
2019/06/21 职场文书
用python实现监控视频人数统计
2021/05/21 Python
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python