python 模块 - pymongo模块
mongoDB 数据库:

pymongo 操作:
import pymongo
# 连接mongo数据库
client = pymongo.MongoClient(host='localhost', port=27017) # 获取应数据库
db=client.text # 获取数据表
my_collection=db.col #添加数据操作:(单条数据为 字典格式,多少条数据为 列表(字典)方式)
# my_collection.insert(info)
# 官方建议使用以下查询:
# my_collection.insert_one(info)
# my_collection.insert_many(info) # 查找数据:
# 大体跟直接在mongoDB查询一致: #比较符 :
# $lt小于{'age': {'$lt': 20}}
# $gt大于{'age': {'$gt': 20}}
# $lte小于等于{'age': {'$lte': 20}}
# $gte大于等于{'age': {'$gte': 20}}
# $ne不等于{'age': {'$ne': 20}}
# $in在范围内{'age': {'$in': [20, 23]}}
# $nin不在范围内{'age': {'$nin': [20, 23]}} # 其他方式查询:
# 符号含义示例示例含义
# $regex匹配正则{'name': {'$regex': '^M.*'}}name以M开头
# $exists属性是否存在{'name': {'$exists': True}}name属性存在
# $type类型判断{'age': {'$type': 'int'}}age的类型为int
# $mod数字模操作{'age': {'$mod': [5, 0]}}年龄模5余0
# $text文本查询{'$text': {'$search': 'Mike'}}text类型的属性中包含Mike字符串
# $where高级条件查询{'$where': 'obj.fans_count == obj.follows_count'}自身粉丝数等于关注数 # 查找所有数据:
# date = my_collection.find() # 按条件查找数据:(依据mongoDB 查询数据一样,只是关键词需要引号包住)
# date = my_collection.find({'sex':"男",'count':{'$gt':60}}) # 显示前20条数据
# date = my_collection.find().limit(20)
# 跳过前2条显示20条数据
# date = my_collection.find().limit(20).skip(2) # 计数
# 要统计查询结果有多少条数据,可以调用count()方法,如统计所有数据条数: # 排序
# 可以调用sort()方法,传入排序的字段及升降序标志即可,示例如下: # 我们也可以直接根据ObjectId来查询,这里需要使用bson库里面的ObjectId。
# from bson.objectid import ObjectId
# result = collection.find_one({'_id': ObjectId('593278c115c2602667ec6bae')})
# print(result)
# 其查询结果依然是字典类型,运行结果:
# {' ObjectId('593278c115c2602667ec6bae'), 'id': '20170101', 'name': 'Jordan', 'age': 20, 'gender': 'male'}
# 当然如果查询_id':结果不存在则会返回None。 # 更多查询方法,详见mongoDB CURD吧。 # 更新数据:
# my_collection.update({条件名key:条件值},{修改的key:修改的值,})
# 官方建议使用以下查询:
# my_collection.update_one({'ID':3533821323},{"$set":{'name':'i123456',"count":22}})
# my_collection.update_many() # 删除数据:
# my_collection.remove({'ID':3533821323})
# # 官方建议使用以下查询:
# my_collection.delete_one()
# my_collection.delete_many() # 需要知道的,查找到的mongo数据类型为<class 'pymongo.cursor.Cursor'>
# info = db.a1.find({"name":"a2"}).limit(10)
# print(type(info))
#输出结果为: <class 'pymongo.cursor.Cursor'> # 可以通过list方式,将cursor类型数据转为列表数据:
# info = list(db.a1.find({"name":"a2"}).limit(10))
# print(type(info))
# 输出结果为: list()
python 模块 - pymongo模块的更多相关文章
- yum安装memcache,mongo扩展以及python的mysql模块安装
//启动memcached/usr/local/memcached/bin/memcached -d -c 10240 -m 1024 -p 11211 -u root/usr/local/memca ...
- Python全栈 MongoDB 数据库(聚合、二进制、GridFS、pymongo模块)
断网了2天 今天补上 聚合操作: 对文档的信息进行整理统计的操作 返回:统计后的文档集合 db.collection.aggregate() 功能:聚合函数,完成聚合操作 参数:聚合条件,配 ...
- python的库有多少个?python有多少个模块?
这里列举了大概500个左右的库: ! Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主 ...
- python之platform模块
python之platform模块 ^_^第三个模块从天而降喽!! 函数列表 platform.system() 获取操作系统类型,windows.linux等 platform.platform() ...
- python之OS模块详解
python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows ...
- python之sys模块详解
python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传 ...
- 学习PYTHON之路, DAY 6 - PYTHON 基础 6 (模块)
一 安装,导入模块 安装: pip3 install 模块名称 导入: import module from module.xx.xx import xx from module.xx.xx impo ...
- [Python Day5] 常用模块
目录: 1.模块介绍 2.time & datetime 3.random 4.OS 5.sys 6.shutil 7.json & pickle 8.shelve 9.xml 处理 ...
- python基础之模块
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合. 而对于一个复杂的功能来,可能需要多个函数 ...
随机推荐
- MFC调用halcon生成的cpp内容
打开VS,文件——新建——项目——Visual C++——MFC——MFC应用程序,注意下图,其他默认.窗体1个Button.1个Picture Control [VS配置Halcon] 1.若hal ...
- String 中常用的几种方法
/* String(char[] value)传递字符数组 将字符数组转换为字符串 字符数组不查询编码表 */ public static void fun1(){ char[] ch = {'a', ...
- 强大的 10款 Mac 思维导图和流程图软件推荐
本文首发于[风云社区 SCOEE],想了解更多mac软件相关内容,可到[风云社区 SCOEE] 今天和大家分享思维导图和流程图工具,思维导图软件可以说应用非常的广,无论是设计工作.开发工作.管理工作都 ...
- as报错
android studio报错报错一:Could not HEAD 'https://dl.google.com/dl/android/maven2/com/android/tools/build/ ...
- u-boot(二)makefile
目录 u-boot(二)makefile 引入 目录结构(1.1.6) 配置文件 目标 配置具体的单板 编译阶段 过程 链接入口 配置链接地址 附录 附录A:mkconfig解析 附录B 链接脚本 t ...
- dubbo基础
一.什么是dubbo,有什么用 dubbo是阿里巴巴开源的一个RPC框架,用于多个应用相互通信.使用dubbo需要安装一zookepper 二.dubbo的基本使用 1.构建一个maven的多模块项目 ...
- 10.外观模式(Facade Pattern)
动机(Motivate): 在软件开发系统中,客户程序经常会与复杂系统的内部子系统之间产生耦合,而导致客户程序随着子系统的变化而变化.那么如何简化客户程序与子系统之间的交互接口?如何将复杂系统的 ...
- C#中 Reference Equals, == , Equals的区别
原文地址:http://blog.csdn.net/wuchen_net/archive/2010/03/23/5409327.aspx ReferenceEquals, == , Equals Eq ...
- Android开发入门经典实例
开发实例概述 今天带大家做一个简单的Android App,这个App会显示创新工程实践老师们的照片和信息,不妨先看一看效果: 虽然这个App非常简单,但是涉及到了Android开发中的一些关键知识, ...
- ES6 In Depth: Arrow functions
Arrows <script language="javascript"> <!-- document.bgColor = "brown"; ...