mongodb的python访问_python操作Mongodb

安装

pip install Pymongo

操作

# 1.导入pymongo

from pymongo import MongoClient

# 创建连接 MongoDB客户端

MC = MongoClient('127.0.0.1', 27017)

# 选择或创建数据库(在内存中)

db = MC['mdb']

player_info = {

'nickname': '小白龙',

'atc': 5,

'def': 99,

'hp': 500,

'skill': [

{

'name': '铁头功',

'def': 50

},

{

'name': '吃包子',

'hp': 100

}

]

}

# 创建一条数据

res = db.player.insert_one(player_info)

print(res.inserted_id) #返回当前新增数据的Objectid 是bson类型 不能被json序列化,可以转换为字符串

# 创建多条

res = db.player.insert_many([player_info])

print(res.inserted_ids) #当前新增数据们的Objectid

# 查询数据

res = db.player.find({}) # 返回一个Cursur对象

for i in res:

print(i) # 返回字典

# 查询符合条件的第一条数据

res = db.player.find_one({})

print(res) # 直接返回字典,省略了上面的for循环

# 更新一条数据

res = db.player.update_one({'nickname': "小白痴"},{'$set':{'hp': 350}})

print(res)

# 更新所有数据

res = db.player.update_many({},{'$inc': {'atc': 20}})

print(res)

# 删除

from bson.objectid import ObjectId

res = db.player.delete_one({'_id': ObjectId("adyu13241jhasd7678asd")})

print(res.delete_count) # 返回0或1 0表示没有删除成功 1表示删除成功

# 排序,选取,跳过

from pymongo import ASCENDING, DESCENDING

res = db.player.find({}).limit(2).skip(2).sort("_id", ASCENDING) # ASCENDING升序 DESCENDING倒序

for i in res:

print(i)

# 高级查询操作 $or $and $all $in

res = list(MongoDB.user.find({"$and":[{"name":"Alexander"},{"age":999}]})) # 并列条件

res = list(MongoDB.user.find({"$or":[{"name":123},{"age":999}]})) # 或条件

res = list(MongoDB.user.find({"name":{"$in":[123,222,55,66,7]}})) # 在...里面

# $all $in 针对 Array

res = list(MongoDB.user.find({"hobby":{"$in":[0]}}))

res = list(MongoDB.user.find({"hobby":{"$all":[1,7,3,9,0]}})) # 子集查询

print(res)

d96060c63381cef4fe40652e21a5c1b9.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值