python 中使用mongodb的封裝

2021-09-27 07:43:14 字數 2088 閱讀 7820

from pymongo import mongoclient

class

mongohelp

(object):

"""mongodb增刪改查的操作"""

client = mongoclient(host=

"localhost"

, port=

27017

) col = client[

"goods"][

"book"

] @classmethod

definsert

(cls, data,***=

true):

"""新增資料"""

if ***:

ifisinstance

(data,

dict):

# 插入一條資料

ret = cls.col.insert_one(data)

return ret

elif

isinstance

(data,

list):

# 插入多條資料

for i in data:

ifnot

isinstance

(i,dict):

return

"資料格式有誤"

ret = cls.col.insert_many(data)

return ret

else

:return

"資料格式為dict或者[{},{}]形式的列表但你傳入的是%s,"

%type

(data)

@classmethod

deffind

(cls, data, ***=

true):

"""查詢資料"""

try:

if ***:

rt = cls.col.find_one(data)

# 查一條數

return rt

else

: rt = cls.col.find(data)

# 查多條資料

result =

for i in rt:

return result

except exception:

return

"查詢資料格式有誤"

@classmethod

defupdate

(cls, org_data, new_data, ***=

true):

# *** = true 只更新一條

"""更新資料"""

if ***:

ret = cls.col.update_one(org_data,

)# 之更細一條

return ret

else

: ret = cls.col.update_many(org_data,

)# 更新全部資料

return ret

@classmethod

defdelete

(cls, data, ***=

true):

"""刪除資料"""

if ***:

ret = cls.col.delete_one(data)

# 刪除一條

return ret

else

: ret = cls.col.delete_many(data)

# 刪除全部

return ret

if __name__ ==

'__main__'

:# data=[,,]

# ret=mongohelp.insert(data)

# print(ret)

# ret=mongohelp.find(,3)

# print(ret)

# ret=mongohelp.update(,)

# print(ret)

ret = mongohelp.delete(

)print

(ret)

django使用mysql和MongoDB的配置

今天整理了一下在django專案中如何使用mongodb,環境如下 ubuntu18.04,django2.0.5,drf3.9,mongoengine0.16 第一步 在settings.py中配置mongodb和mysql,配置如下 可以同時使用mysql和mongodb databases m...

和 在python中使用

給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空。示例 1 nums1 1 3 nums2 2 則中位數是 2.0 示例 2 nums1 1 2 ...

python中使用bp Python ocbp包

概述ocbpy是乙個python模組,它可以在aacgm座標和磁性之間進行轉換。相對於開闊地調整緯度和當地時間的座標系 閉合場線邊界 ocb 這對統計特別有用 磁極的研究,其中相對於固定磁座標的網格劃分 系統會導致不同物理區域的平均值,例如極光 和極冠測量。此座標繫在 chisham,g.2017 ...