python全栈开发day117-MongoDB,pymongo
1.MongoDB操作
使用了不存在的对象即创建该对象
1.增加:
官方不推荐写法:
insert([{},{},{}])
官方推荐写法:
insertOne({})
insertMany([{},{},{}]) 2.删除:
官方不推荐写法:
remove({}) # delete
官方推荐写法:
deleteOne({})
deleteMany({}) 3.修改:
$修改器
官方不推荐写法:
update({},{$set:{}}) 官方推荐写法:
updateOne({},{$set:{}})
updateMany({},{$set:{}}) 4.查询
find({条件})
findOne({条件}) $: 存储 符合条件的列表元素的下标索引 hobby.$ : 1
$关键字:
$lt
$gt
$lte
$gte
$eq : $all 满足所有元素的数据 $all:[1,3,2]
$in 满足其中一个元素的数据 $in:[1,2,5,6]
$or 满足其中一个字段的数据 $or:[{name:1},{age:2}] $修改器:
$set 直接将Key设定为value
$inc 将Value加在 Key对应的value上
$unset 删除字段(field) Arrays:
$push list.append() 添加元素
$pull list.remove() 删除指定元素
$pop list.pop() 删除最后一个:1 或者 第一个:-1
2.pymongo
import pymongo mongo_client = pymongo.MongoClient(host="127.0.0.1",port=27017) mongo_db = mongo_client["S12DAY117"] #查询
# res = mongo_db.user.find()
# print(res)
# for i in res:
# print(i)
# res = mongo_db.user.find_one({"name":"yinwangba"})
# print(res) # 插入
# res = mongo_db.chat.insert_one({})
# res = mongo_db.chat.insert_many([{},{},{}])
# print(res,res.inserted_ids) # 改:
# res = mongo_db.user.update_one({"name":"jinwangba"},{"$set":{"age":888}})
# res = mongo_db.user.update_many({"age":{"$gte":0}},{"$set":{"age":888}})
# print(res,dir(res),res.modified_count) # 删除:
# res = mongo_db.user.delete_one({"name":"xiaozhuer"})
# res = mongo_db.user.delete_many({})
# print(res,dir(res),res.deleted_count) res = mongo_db.user.find_one({"name":"mjj"})
print(res) for index,item in enumerate(res.get("course")):
if res.get("course")[index]["course_name"] == "Python":
res.get("course")[index]["course_name"] = "Django Web框架" if res.get("course")[index]["course_name"] == "Vue.js":
res.get("course")[index]["course_name"] = "Flask Web框架" if res.get("course")[index]["course_name"] == "MySQL":
res.get("course")[index]["course_name"] = "MongoDB" res = mongo_db.user.update_one({"name":"mjj"},{"$set":res})
python全栈开发day117-MongoDB,pymongo的更多相关文章
- 巨蟒python全栈开发flask8 MongoDB回顾 前后端分离之H5&pycharm&夜神
1.MongoDB回顾 .启动 mongod - 改变data/db位置: --dbpath D:\data\db mongod --install 安装windows系统服务 mongod --re ...
- python全栈开发目录
python全栈开发目录 Linux系列 python基础 前端~HTML~CSS~JavaScript~JQuery~Vue web框架们~Django~Flask~Tornado 数据库们~MyS ...
- Python全栈开发【面向对象进阶】
Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...
- Python全栈开发【面向对象】
Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...
- Python全栈开发【模块】
Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...
- Python全栈开发【基础四】
Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...
- Python全栈开发【基础三】
Python全栈开发[基础三] 本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...
- Python全栈开发【基础二】
Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...
- Python全栈开发【基础一】
Python全栈开发[第一篇] 本节内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.变量.input输入.if流程控制与缩进.while循环) if流程控制与wh ...
- python 全栈开发之路 day1
python 全栈开发之路 day1 本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...
随机推荐
- shell脚本备份日志文件
crontab -e crontab -l service crond restart 55 7 * * * /data/app/autoprice7/resin-pro-3.1.15/log_old ...
- 如何在Linux中使用命令行卸载软件
您可以使用“dpkg”命令来查看您的计算机,按“Ctrl + Alt + T”的所有已安装包的列表,打开一个终端窗口. 在提示符下键入以下命令,然后按Enter键.dpkg -- list 要卸载程序 ...
- SpringBoot注册Windows服务和启动报错的原因
SpringBoot注册Windows服务和启动报错的原因 Windows系统启动Java程序会弹出黑窗口.黑窗口有几点不好.首先它不美观:其次容易误点导致程序关闭:但最让我匪夷所思的是:将鼠标光标选 ...
- Linux服务与进程状态
linux进程的几个状态 Linux进程状态:R (TASK_RUNNING),可执行状态&运行状态(在run_queue队列里的状态) Linux进程状态:S (TASK_INTERRUPT ...
- idea中如何添加RunDashboard
在微服务开发中,往往要同时启动多个服务,这时候使用Run控制台难免会出错,并且不方便管理,这里推荐一个功能Run Dashboard idea中打开Run Dashboard的方法如下 view &g ...
- js/vue图片压缩
js版 新建compressImage.js,内容如下: // 将base64转换为blob(有需要可加上,没需要可不加) function convertBase64UrlToBlob(urlDat ...
- python入门篇
第一篇:python入门 第二篇:数据类型.字符编码.文件处理 第三篇:函数 第四篇:模块与包 第五篇:常用模块 第六篇:面向对象 第七篇:面向对象高级 第八篇:异常处理 第九篇:网络编程 第十篇:并 ...
- 原生JS实现简易评论更新功能
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 一个疑问,int对象5为何没有__dict__属性,而类却有,这是怎么做到的?对象不是都可以调用类属性吗?
a=1 print hasattr(a.__dict__) print hasattr(a.__class__.__dict__)
- Doom HDU - 5239 (找规律+线段树)
题目链接: D - Doom HDU - 5239 题目大意:首先是T组测试样例,然后n个数,m次询问,然后每一次询问给你一个区间,问你这个这段区间的加上上一次的和是多少,查询完之后,这段区间里 ...