最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python pymongo模塊常用操作分析

 更新時間:2018年09月01日 09:59:23   作者:每天1990  
這篇文章主要介紹了Python pymongo模塊常用操作,結(jié)合實例形式分析了pymongo模塊的導入、連接MongoDB數(shù)據(jù)以及插入、更新、刪除、查詢等操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下

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

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

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

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

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

二、insert,insert_one()只能插入一條數(shù)據(jù),插入多條數(shù)據(jù)的格式是db.user.insert([{條數(shù)1},{條數(shù)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還可以用下面這種方式插入,將數(shù)據(jù)獨立出來

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:是否對查詢到的全部數(shù)據(jù)進行操作,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也是只能對一條數(shù)據(jù)進行操作,$set是update操作的$操作符,也可以用$inc或$push,前兩個操作速度差不多,$push操作速度較慢。

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

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

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

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

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

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

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

*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"])

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫操作技巧匯總》、《Python數(shù)學運算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

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

相關(guān)文章

最新評論

阳新县| 阜新| 红桥区| 喀什市| 扶风县| 东至县| 鄂州市| 商洛市| 方山县| 三明市| 雅江县| 贵港市| 拉萨市| 苍梧县| 峨眉山市| 文登市| 弥勒县| 清新县| 临颍县| 黔南| 邯郸县| 会理县| 抚松县| 牟定县| 惠水县| 土默特右旗| 浏阳市| 婺源县| 灌阳县| 土默特右旗| 永川市| 黔东| 中卫市| 鸡泽县| 邳州市| 疏勒县| 荣昌县| 靖州| 沂南县| 荔波县| 曲阳县|