您好,登录后才能下订单哦!
这篇文章给大家介绍pymongo模块怎么在Python中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
环境:pymongo3.0.3,python3
以下是我整理的一些关于pymongo的操作,网上很多是用pymongo.Connecion()
去连接数据库的,但是我这里连接一直提示没有这个包,如果大家有什么解决方案或者其他需要补充的,也欢迎告诉我。
一、导入pymongo,使用MongClient连接数据库,连接到myinfo数据库
import pymongo client= pymongo.MongoClient("127.0.0.1",27017) db=client.myinfo
二、insert
,insert_one()
只能插入一条数据,插入多条数据的格式是db.user.insert([{条数1},{条数2}])
,一定要加[],否则只会添加进去第一条(user是一个集合,除了用db["collection"]外也可以用db.collection
来对集合进行操作
db["user"].insert_one({"name":"zhao"}) db["user"].insert_one({"name":"zhou","age":"5"}) db["user"].insert([{"name":"wu","age":"6"},{"name":"zheng","age":"7"}])
*insert还可以用下面这种方式插入,将数据独立出来
data = [ {"name":"zhao","rank":"1"}, {"name":"qian","rank":"2"}, {"name":"sun","rank":"3"}, {"name":"li","rank":"4"}, ] db.user.insert(data)
三、update,$set:更新操作,multi=True:是否对查询到的全部数据进行操作,upsert=True:如果找不到查询的结果是否插入一条数据
db.user.update_one({"age":"2"},{"$set":{"name":"qian","age":2}}) db.user.update({"name":"sun"},{"$set":{"name":"qian"}},upsert=True)
*update_one也是只能对一条数据进行操作,$set是update操作的$操作符,也可以用$inc或$push,前两个操作速度差不多,$push操作速度较慢。
四、remove,如果后面()内不填写内容,就是将整个表清空了,db.user.find_one_and_delete()
也是删除的意思
db.user.remove({"name":"wu"}) db.user.find_one_and_delete({"name":"zheng"})
五、db.user.count()
,统计查询出的条数,()内不填写东西,就是统计出该集合下所有的数据
print(db.user.count({"age":"6"}))
六、打印出查询结果
from bson import json_util as jsonb print(jsonb.dumps(list(db.user.find({"name":"wu"})))) print(db.user.find({"name":"wu"}))
可以看到上面两种方式,不转换与转换后的结果对比如下:
*jsonb.dumps()
将查询出来的结果转换成了可以读的list的格式,否则打印出来的是<pymongo.cursor.Cursor object at 0x02096DF0>这种格式的
遍历col1=db.user.find()
查询到的所有结果,以及它key=name的value
for i in col1: print(i) print(i["name"])
关于pymongo模块怎么在Python中使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。