標籤:block 發包 ogr find 資料 move 文檔 sys update
1.Pymongo
PyMongo是Mongodb的Python介面開發包,是使用python和Mongodb的推薦方式。
官方文檔
2.安裝
進入虛擬環境sudo pip install pymongo或源碼安裝python setup.py
3.使用
匯入模組
import pymongo#或者from pymongo import MongoClient
建立於MongoClient 的串連:
client = MongoClient(‘localhost‘, 27017) # 或者 client = MongoClient(‘mongodb://localhost:27017/‘)
得到資料庫
db = client.test_database# 或者db = client[‘test-database‘]
得到一個資料集合
collection = db.test_collection# 或者 collection = db[‘test-collection‘]
4.完成命令列項目:學生資訊管理(基於Python2.7)
代碼操作
#-*- coding:utf-8 -*-import pymongodef system(): print(‘◆您將進入資料庫管理系統,資料無價、謹慎操作!◆‘) print(‘◇1:查看資料◇‘) print(‘◇2:增加資料◇‘) print(‘◇3:修改資料◇‘) print(‘◇4:刪除資料◇‘) print(‘◇5:搜尋資料◇‘) print(‘●6:退出資料庫管理系統●‘) # 建立與mongodb的串連 client = pymongo.MongoClient(‘localhost‘, 27017) # 得到資料庫 stu = client[‘stu‘] # 得到一個資料集合 message = stu[‘message‘] while True: order = int(raw_input(‘請輸入相關指令:‘)) if order==1: exit = message.count() if exit==0: print(‘抱歉,資料庫中目前沒有相關資料!‘) else: for data in message.find(): content = data[‘name‘]+data[‘age‘]+data[‘sex‘] print(content) elif order ==2: name = raw_input(‘請輸入學生姓名:‘) age = raw_input(‘請輸入學生年齡:‘) sex = raw_input(‘請輸入學生性別(男/女):‘) data = { ‘name‘:name, ‘age‘:age, ‘sex‘:sex, } message.insert_one(data) print (‘添加成功!‘) elif order == 3: name = raw_input(‘請輸入要修改的學生姓名:‘) exit = message.count({‘name‘: name}) if exit != 0: age = raw_input(‘請輸入修改後的學生年齡:‘) message.update({‘name‘:name},{‘$set‘:{‘age‘:age}}) print(‘修改成功‘) else: print ‘抱歉,資料庫中沒有這個學生的資訊!‘ elif order == 4: name = raw_input(‘請輸入要刪除的學生姓名:‘) exit = message.count({‘name‘: name}) if exit != 0: message.remove({‘name‘:name}) print(‘刪除成功‘) else: print ‘抱歉,資料庫中沒有這個學生的資訊!‘ elif order == 5: name = raw_input(‘請輸入要查詢的學生姓名:‘) exit = message.count({‘name‘:name}) if exit!=0: data = message.find_one({‘name‘:name}) content = data[‘name‘]+data[‘age‘]+data[‘sex‘] print content else: print ‘抱歉,資料庫中沒有這個學生的資訊!‘ elif order == 6: print(‘感謝您的使用!‘) break else: print(‘您的輸入有誤,請輸入有效指令(1/2/3/4/5)‘)if __name__ == ‘__main__‘: system()
測試結果
MongoDB與python互動