AI智能
改变未来

快毕业了,老师说用Python做个学生管理系统打包成exe文件发给她,就不追究我旷课的事情了,这不简简单单?

20000

文章目录

  • 一、准备工作
  • 二、代码流程
  • 三、打包exe可执行程序

由于Python都会了,学校教的确实基础,平时就没怎么去上课,让美女老师天天脑壳痛,这不快毕业了,让我做一个学生管理系统出来,还要打包成exe发给她,她就不追究我不上课的问题了~

话说这能难倒我吗?赶赶单单~


来 ,开搞!

一、准备工作

用到的软件准备一哈

  • Python 3.8
  • Pycharm 2021.2

知识点

  • Python基础语法
  • 基本的数据类型与结构
  • 基本的逻辑控制语句
  • 实战小项目

二、代码流程

= 赋值 就是把等号左边的内容 用 等号右边的这个变量名字 接收

msg = """**************************************************欢迎使用【学生信息管理系统】V1.0请选择你想要进行的操作1. 新建学生信息2. 显示全部信息3. 查询学生信息4. 删除学生信息5. 修改学生信息0. 退出系统**************************************************"""

学生信息用列表保存,并且里面字典数据类型

student_info = [{'姓名': '木子', '语文': 60, '数学': 60, '英语': 60, '总分': 180},{'姓名': '巳月', '语文': 60, '数学': 60, '英语': 60, '总分': 180},{'姓名': '婧琪', '语文': 60, '数学': 60, '英语': 60, '总分': 180},]

整一个死循环

while True:print(msg)  # 输出函数 print# = 左边都是自定义的变量  变量不能以数字开头 不推荐使用关键字作为变量名 建议变量见名知意# 输入的内容 数据类型是字符串 数据类型input_world = input('请输入你想要进行的操作: ')# print('你选择的操作是: ', input_world)# 多条件判断的语句 一个 = 是赋值  两个 = 比较 是否相等# 注释if input_world == '1': # 判断 input_world(输入的内容) 是否 等于 1print('新建学生信息')name = input('请输入学生的姓名: ')chinese = input('请输入学生的语文成绩: ')math = input('请输入学生的数学成绩: ')English = input('请输入学生的英语成绩: ')# len() == 10 统计元素个数 如果 多或者少 进行判断total = int(chinese) + int(math) + int(English)  # 总分 转整型dit = {'姓名': name,'语文': chinese,'数学': math,'英语': English,'总分': total,}student_info.append(dit)elif input_world == '2':print('显示全部信息')print('姓名\\t语文\\t数学\\t英语\\t总分')

for遍历循环

for student in student_info:# 隔空 空tab键位 四个空格 \\n换行# {} 字典数据类型  根据键值对提取内容 (根据冒号左边的内容 提取冒号右边的内容)# 字典取值的方法  student['语文']print(student['姓名'] + '\\t' +str(student['语文']) + '\\t\\t' +str(student['数学']) + '\\t\\t' +str(student['英语']) + '\\t\\t' +str(student['总分']))

查询信息

elif input_world == '3':print('查询学生信息')input_name = input('请输入你要查询的学生姓名: ')for student in student_info:if student['姓名'] == input_name:print('姓名\\t语文\\t数学\\t英语\\t总分')# 格式整齐print(student['姓名'] + '\\t' +str(student['语文']) + '\\t\\t' +str(student['数学']) + '\\t\\t' +str(student['英语']) + '\\t\\t' +str(student['总分']))break  # 跳出循环else:print('学生信息有误, 查询信息失败')

删除信息

elif input_world == '4':print('删除学生信息')input_name = input('请输入你要删除的学生姓名: ')for student in student_info:if student['姓名'] == input_name:# 列表如何删除元素# pop 弹出列表元素 并且删除student_info.remove(student)print(student['姓名'], '信息删除成功')breakelse:print('学生信息有误, 删除信息失败')

修改信息

elif input_world == '5':print('修改学生信息')input_name = input('请输入你要修改的学生姓名: ')for student in student_info:if student['姓名'] == input_name:chinese = input('请重新输入语文成绩: ')math = input('请重新输入数学成绩: ')english = input('请重新输入英语成绩: ')total = int(chinese) + int(math) + int(english)student['语文'] = chinesestudent['数学'] = mathstudent['英语'] = englishstudent['总分'] = totalbreakelse:print('学生信息有误, 修改信息失败')

退出

elif input_world == '0':print('退出系统')break

完整代码

msg = """**************************************************欢迎使用【学生信息管理系统】V1.0请选择你想要进行的操作1. 新建学生信息2. 显示全部信息3. 查询学生信息4. 删除学生信息5. 修改学生信息0. 退出系统**************************************************"""student_info = [{'姓名': '木子', '语文': 60, '数学': 60, '英语': 60, '总分': 180},{'姓名': '巳月', '语文': 60, '数学': 60, '英语': 60, '总分': 180},{'姓名': '婧琪', '语文': 60, '数学': 60, '英语': 60, '总分': 180},]# 死循环while True:print(msg)  # 输出函数 printinput_world = input('请输入你想要进行的操作: ')if input_world == '1': # 判断 input_world(输入的内容) 是否 等于 1print('新建学生信息')name = input('请输入学生的姓名: ')chinese = input('请输入学生的语文成绩: ')math = input('请输入学生的数学成绩: ')English = input('请输入学生的英语成绩: ')total = int(chinese) + int(math) + int(English)  # 总分 转整型dit = {'姓名': name,'语文': chinese,'数学': math,'英语': English,'总分': total,}student_info.append(dit)elif input_world == '2':print('显示全部信息')print('姓名\\t语文\\t数学\\t英语\\t总分')for student in student_info:print(student['姓名'] + '\\t' +str(student['语文']) + '\\t\\t' +str(student['数学']) + '\\t\\t' +str(student['英语']) + '\\t\\t' +str(student['总分']))elif input_world == '3':print('查询学生信息')input_name = input('请输入你要查询的学生姓名: ')for student in student_info:if student['姓名'] == input_name:print('姓名\\t语文\\t数学\\t英语\\t总分')# 格式整齐print(student['姓名'] + '\\t' +str(student['语文']) + '\\t\\t' +str(student['数学']) + '\\t\\t' +str(student['英语']) + '\\t\\t' +str(student['总分']))break  # 跳出循环else:print('学生信息有误, 查询信息失败')elif input_world == '4':print('删除学生信息')input_name = input('请输入你要删除的学生姓名: ')for student in student_info:if student['姓名'] == input_name:# 列表如何删除元素# pop 弹出列表元素 并且删除student_info.remove(student)print(student['姓名'], '信息删除成功')breakelse:print('学生信息有误, 删除信息失败')elif input_world == '5':print('修改学生信息')input_name = input('请输入你要修改的学生姓名: ')for student in student_info:if student['姓名'] == input_name:chinese = input('请重新输入语文成绩: ')math = input('请重新输入数学成绩: ')english = input('请重新输入英语成绩: ')total = int(chinese) + int(math) + int(english)student['语文'] = chinesestudent['数学'] = mathstudent['英语'] = englishstudent['总分'] = totalbreakelse:print('学生信息有误, 修改信息失败')elif input_world == '0':print('退出系统')breakelse:print('请输入正确的操作')

三、打包exe可执行程序

首先安装一下这个模块

Pyinstaller

win+r

打开搜索框,输入

cmd

回车打开命令提示符窗口。

输入

pip install Pyinstaller

即可安装成功。

你的代码保存路径尽量换成英文的,免得报错了。

比如你的代码放在D盘了,你就在命令提示符窗口把目录切换到D盘。

然后输入CD +空格+你的文件地址,比如我放在D盘的666文件夹了。

这时候开始打包,在命令提示符窗口输入

pyinstaller -F -w

加上你的代码文件名,一定带上后缀

.py


这里解释一下,

-F

是生成exe文件的,一定要用大写,不然会失败;

-w

大写小都可以,它是解决打包成功后运行exe文件会闪黑框问题,尽量加上,你也不想发给别人装逼的时候被挑刺吧。

然后回车开始打包

打开

dist

文件夹,你打包好的文件就放在这里咯~

运行一下看看

新建信息

查询信息

好家伙,是不是简简单单! 兄弟们,动动小手点个赞关注一下呗~

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 快毕业了,老师说用Python做个学生管理系统打包成exe文件发给她,就不追究我旷课的事情了,这不简简单单?