MongoDB與python互動

來源:互聯網
上載者:User

標籤: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互動

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.