小胖將代碼進行了升級,改成用mongodb來存儲用戶數據。 關註公眾號「**Python專欄**」,後臺回覆:zsxq08,獲取本文全套代碼。 ...
Overview:
- 環境
- 前言
- 效果圖
- mongdb安裝
- 代碼涉及知識點
- 關於windows的cmd下執行python文件顯示中文亂碼的問題
- 總結
0.環境
操作系統:Windows
Python版本:3.6.0
MongoDB版本:4.0.6
1.前言
同學們還記得,前一次小胖用python結合json文本存儲實現的用戶管理系統麽?
註:詳見「手把手教你用python實現一個簡單用戶管理系統」
現在小胖將這個代碼進行了升級,改成用mongodb來存儲用戶數據。這樣又能學到python操作mongodb的用法了有沒有。
2.效果圖
2.1 修改密碼
2.2 錄入用戶
2.3 查找用戶
2.4 刪除用戶
2.5 mongdb 中的數據格式
3.mongdb安裝
3.1 下載
下載鏈接:
https://www.mongodb.com/download-center/community
註:官網下載很慢,同學自己搞個會員加速下,你懂的。
3.2 安裝
基本是一路下一步,需要註意的地方小胖網上找了幾張圖來說明。
這裡可以自定選擇需要安裝的東西(小胖選擇完全安裝,隨便你們):
選擇安裝路徑:
但是需要註意不要選擇一個叫 "install mongoDB compass" 的東西,否則可能要很長時間都一直在執行安裝,MongoDB Compass 是一個圖形界面管理工具。
註:小胖自己電腦上下載的是:mongodb-win32-x86_64-2008plus-ssl-4.0.6-signed.msi 這個版本
3.3 配置環境變數
找到mongodb的安裝目錄,像下麵這樣配置就行了:
3.4 啟動服務端
小胖將mongodb數據目錄指定到了D:\mongodb\底下,這個底下會生成兩個目錄,data和log。接下來在D:\mongodb\data\這個路徑底下再新建一個目錄db。
接下來打開cmd,在命令行里執行以下命令:
mongod --dbpath "D:\mongodb\data\db"。
你就會看到mongodb啟動了,像下麵這樣:
3.5 客戶端連接
cmd執行mongo即可
如果mongodb服務端監聽在非本地地址,後面添加--host參數填入目標ip地址即可:
4.代碼涉及知識點
4.1 依賴包安裝
pip install pymongo
4.2 pymongo的用法
連接資料庫:
插入數據
insert和save的區別如下:
- 在插入數據時不指定'_id'這個欄位的情況下沒有區別
- 在插入數據時指定'_id'這個欄位的情況下,如果插入的數據和資料庫已存在的'_id'相同,save會更新資料庫的值,而insert會報錯,報錯內容為鍵重覆
註:本文末提供的代碼中,插入數據沒有指定'_id',在這種情況下,mongodb會自動幫你生成一個'_id',類似這樣{'_id': ObjectId('5c96f27b0988c31554f2bd64'), '用戶名': 'hahaha444', '年齡': '48', '電話': '44444'},所以用save還是insert在這裡沒有區別
查詢數據(查詢不到則返回None)
更新數據
刪除數據
5.關於windows的cmd下執行python文件顯示中文亂碼的問題
主要是編碼格式的問題,windows預設是gbk編碼格式。
方法如下:
- 確保py文件是UTF-8編碼存檔的。
- 在CMD視窗輸入CHCP 65001 回車。(65001是win系統UTF-8的代碼)
然後就能正常顯示了
6.總結
mongodb的使用還比較複雜的,同學們只要學會了基本用法,就可以開始學著敲本文的代碼了。
如果同學們自己實現了,別忘了留言告訴我。有問題也可以留言給我,我們一起討論。
關註公眾號「Python專欄」,後臺回覆:zsxq08,獲取本文全套代碼。