当用户管理系统遇上python和mongodb后…… 0.环境 1.前言 2.效果图 3.mongdb安装 4.代码涉及知识点 5.关于windows的cmd下执行python文件显示中文乱码的问题 6.总结

Overview:

  1. 环境
  2. 前言
  3. 效果图
  4. mongdb安装
  5. 代码涉及知识点
  6. 关于windows的cmd下执行python文件显示中文乱码的问题
  7. 总结

操作系统:Windows

Python版本:3.6.0

MongoDB版本:4.0.6

1.前言

同学们还记得,前一次小胖用python结合json文本存储实现的用户管理系统么?

注:详见「手把手教你用python实现一个简单用户管理系统

现在小胖将这个代码进行了升级,改成用mongodb来存储用户数据。这样又能学到python操作mongodb的用法了有没有。

2.效果图

2.1 修改密码

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

2.2 录入用户

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

2.3 查找用户

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

2.4 删除用户

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

2.5 mongdb 中的数据格式

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

3.mongdb安装

3.1 下载

下载链接:

https://www.mongodb.com/download-center/community

注:官网下载很慢,同学自己搞个会员加速下,你懂的。

3.2 安装

基本是一路下一步,需要注意的地方小胖网上找了几张图来说明。

这里可以自定选择需要安装的东西(小胖选择完全安装,随便你们):

当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结
选择安装路径:
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

但是需要注意不要选择一个叫 "install mongoDB compass" 的东西,否则可能要很长时间都一直在执行安装,MongoDB Compass 是一个图形界面管理工具。
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结
注:小胖自己电脑上下载的是:mongodb-win32-x86_64-2008plus-ssl-4.0.6-signed.msi 这个版本

3.3 配置环境变量

找到mongodb的安装目录,像下面这样配置就行了:
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

3.4 启动服务端

小胖将mongodb数据目录指定到了D:mongodb底下,这个底下会生成两个目录,data和log。接下来在D:mongodbdata这个路径底下再新建一个目录db。

接下来打开cmd,在命令行里执行以下命令:

mongod --dbpath "D:mongodbdatadb"。

你就会看到mongodb启动了,像下面这样:
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

3.5 客户端连接

cmd执行mongo即可

如果mongodb服务端监听在非本地地址,后面添加--host参数填入目标ip地址即可:
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

4.代码涉及知识点

4.1 依赖包安装

pip install pymongo

4.2 pymongo的用法

连接数据库:
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

插入数据
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结
insert和save的区别如下:

  • 在插入数据时不指定'_id'这个字段的情况下没有区别
  • 在插入数据时指定'_id'这个字段的情况下,如果插入的数据和数据库已存在的'_id'相同,save会更新数据库的值,而insert会报错,报错内容为键重复

注:本文末提供的代码中,插入数据没有指定'_id',在这种情况下,mongodb会自动帮你生成一个'_id',类似这样{'_id': ObjectId('5c96f27b0988c31554f2bd64'), '用户名': 'hahaha444', '年龄': '48', '电话': '44444'},所以用save还是insert在这里没有区别

查询数据(查询不到则返回None)
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结
更新数据
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结
删除数据
当用户管理系统遇上python和mongodb后……
0.环境
1.前言
2.效果图
3.mongdb安装
4.代码涉及知识点
5.关于windows的cmd下执行python文件显示中文乱码的问题
6.总结

5.关于windows的cmd下执行python文件显示中文乱码的问题

主要是编码格式的问题,windows默认是gbk编码格式。

方法如下:

  1. 确保py文件是UTF-8编码存档的。
  2. 在CMD窗口输入CHCP 65001 回车。(65001是win系统UTF-8的代码)

然后就能正常显示了

6.总结

mongodb的使用还比较复杂的,同学们只要学会了基本用法,就可以开始学着敲本文的代码了。

如果同学们自己实现了,别忘了留言告诉我。有问题也可以留言给我,我们一起讨论。

关注公众号「Python专栏」,后台回复:zsxq08,获取本文全套代码。