国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

Python pymongo模塊常用操作分析

2020-01-04 14:36:01
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Python pymongo模塊常用操作。分享給大家供大家參考,具體如下:

環(huán)境:pymongo3.0.3,python3

以下是我整理的一些關(guān)于pymongo的操作,網(wǎng)上很多是用pymongo.Connecion()去連接數(shù)據(jù)庫(kù)的,但是我這里連接一直提示沒有這個(gè)包,如果大家有什么解決方案或者其他需要補(bǔ)充的,也歡迎告訴我。

一、導(dǎo)入pymongo,使用MongClient連接數(shù)據(jù)庫(kù),連接到myinfo數(shù)據(jù)庫(kù)

import pymongoclient= pymongo.MongoClient("127.0.0.1",27017)db=client.myinfo

二、insertinsert_one()只能插入一條數(shù)據(jù),插入多條數(shù)據(jù)的格式是db.user.insert([{條數(shù)1},{條數(shù)2}]),一定要加[],否則只會(huì)添加進(jìn)去第一條(user是一個(gè)集合,除了用db["collection"]外也可以用db.collection來對(duì)集合進(jìn)行操作

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還可以用下面這種方式插入,將數(shù)據(jù)獨(dú)立出來

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:是否對(duì)查詢到的全部數(shù)據(jù)進(jìn)行操作,upsert=True:如果找不到查詢的結(jié)果是否插入一條數(shù)據(jù)

db.user.update_one({"age":"2"},{"$set":{"name":"qian","age":2}})db.user.update({"name":"sun"},{"$set":{"name":"qian"}},upsert=True)

*update_one也是只能對(duì)一條數(shù)據(jù)進(jìn)行操作,$set是update操作的$操作符,也可以用$inc或$push,前兩個(gè)操作速度差不多,$push操作速度較慢。

四、remove,如果后面()內(nèi)不填寫內(nèi)容,就是將整個(gè)表清空了,db.user.find_one_and_delete()也是刪除的意思

db.user.remove({"name":"wu"})db.user.find_one_and_delete({"name":"zheng"})

五、db.user.count(),統(tǒng)計(jì)查詢出的條數(shù),()內(nèi)不填寫東西,就是統(tǒng)計(jì)出該集合下所有的數(shù)據(jù)

print(db.user.count({"age":"6"}))

六、打印出查詢結(jié)果

from bson import json_util as jsonbprint(jsonb.dumps(list(db.user.find({"name":"wu"}))))print(db.user.find({"name":"wu"}))

可以看到上面兩種方式,不轉(zhuǎn)換與轉(zhuǎn)換后的結(jié)果對(duì)比如下:

Python,pymongo

*jsonb.dumps()將查詢出來的結(jié)果轉(zhuǎn)換成了可以讀的list的格式,否則打印出來的是<pymongo.cursor.Cursor object at 0x02096DF0>這種格式的

遍歷col1=db.user.find()查詢到的所有結(jié)果,以及它key=name的value

for i in col1:  print(i)  print(i["name"])

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到python教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 迁西县| 东乌| 湟中县| 巩留县| 鄱阳县| 绥江县| 潢川县| 绥宁县| 织金县| 阿鲁科尔沁旗| 体育| 射洪县| 柳州市| 孟连| 汕头市| 阿拉善盟| 弥勒县| 静安区| 西林县| 镇坪县| 陆河县| 保德县| 鹤庆县| 大宁县| 林西县| 清水河县| 青浦区| 桐梓县| 鄱阳县| 泸定县| 博野县| 高密市| 聊城市| 平安县| 沁水县| 兴化市| 尉犁县| 房山区| 大渡口区| 光山县| 四会市|