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的更多相关文章

  1. 巨蟒python全栈开发flask8 MongoDB回顾 前后端分离之H5&pycharm&夜神

    1.MongoDB回顾 .启动 mongod - 改变data/db位置: --dbpath D:\data\db mongod --install 安装windows系统服务 mongod --re ...

  2. python全栈开发目录

    python全栈开发目录 Linux系列 python基础 前端~HTML~CSS~JavaScript~JQuery~Vue web框架们~Django~Flask~Tornado 数据库们~MyS ...

  3. Python全栈开发【面向对象进阶】

    Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...

  4. Python全栈开发【面向对象】

    Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...

  5. Python全栈开发【模块】

    Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...

  6. Python全栈开发【基础四】

    Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...

  7. Python全栈开发【基础三】

    Python全栈开发[基础三]  本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...

  8. Python全栈开发【基础二】

    Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...

  9. Python全栈开发【基础一】

    Python全栈开发[第一篇] 本节内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.变量.input输入.if流程控制与缩进.while循环) if流程控制与wh ...

  10. python 全栈开发之路 day1

    python 全栈开发之路 day1   本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...

随机推荐

  1. MUI框架 按钮点击响应不好的问题解决办法

    MUI框架 按钮点击响应不好的问题 实际例子: $(function (){ mui(document.body).on('tap', '.bindchk', function(e) { //触发一次 ...

  2. Activity之间的跳转和数据传输

    1.显式跳转 protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceSt ...

  3. 2018-2019-2 20165232《网络对抗技术》Exp1 缓冲区溢出实验

    2018-2019-2 20165232<网络对抗技术>Exp1 缓冲区溢出实验 实验点1:逆向及Bof基础实践 实践任务 用一个pwn1文件. 该程序正常执行流程是:main调用foo函 ...

  4. Tomcat系列(4)——Tomcat 组件及架构详细部分

    核心部分   1. 定义 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta ...

  5. GIL全局锁测试

    基础知识:https://www.cnblogs.com/SuKiWX/p/8804974.html 测试环境 python3.7默认解释器(cpython) cpu为四核 测试代码 #! /usr/ ...

  6. MDK调试无法进入main()函数

    今天在用MDK调试stm32时出现了无法进入main函数,进入startup文件的情况. 在网上查找资料时发现,MDK调试设置断点最多只能设置5个.在减少断点后,调试果然能够正常进入main()函数了 ...

  7. 软工网络15个人作业4——alpha阶段个人总结

    软工网络15个人作业4--alpha阶段个人总结 一.个人总结 用自我评价表:http://www.cnblogs.com/xinz/p/3852177.html 总结Alpha冲刺过程. 由于直接用 ...

  8. 你真的了解word-wrap和word-break的区别吗?

    这两个东西是什么,我相信至今还有很多人搞不清,只会死记硬背的写一个word-wrap:break-word;word-break:break-all;这样的东西来强制断句,又或者是因为这两个东西实在是 ...

  9. vue项目打包笔记

    我的需求是在同一个代码目录下,可以同时放入两个项目包,通过运行不同的命令,运行相应的项目页面以及打包相应的项目. 这样的话,代码管理比较方便,用于多个项目在同一时间开发,类型一样,但在功能上有所区分的 ...

  10. P5305 [GXOI/GZOI2019]旧词

    题目地址:P5305 [GXOI/GZOI2019]旧词 这里是官方题解 \[\sum_{i \leq x}^{}\ depth(lca(i,y))^k\] \(k = 1\) 求的是 \(\sum_ ...