Python实现学生管理系统并生成exe可执行文件详解流程

作者:轻松学Python 时间:2023-03-11 04:52:42 

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

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(输入的内容) 是否 等于 1
       print('新建学生信息')
       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['姓名'], '信息删除成功')
           break
   else:
       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['语文'] = chinese
            student['数学'] = math
            student['英语'] = english
            student['总分'] = total
            break
    else:
        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)  # 输出函数 print
   input_world = input('请输入你想要进行的操作: ')
   if input_world == '1': # 判断 input_world(输入的内容) 是否 等于 1
       print('新建学生信息')
       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['姓名'], '信息删除成功')
               break
       else:
           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['语文'] = chinese
               student['数学'] = math
               student['英语'] = english
               student['总分'] = total
               break
       else:
           print('学生信息有误, 修改信息失败')

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

else:
       print('请输入正确的操作')

三、打包exe可执行程序

首先安装一下这个模块Pyinstallerwin+r打开搜索框,输入cmd回车打开命令提示符窗口。

Python实现学生管理系统并生成exe可执行文件详解流程

输入pip install Pyinstaller即可安装成功。

Python实现学生管理系统并生成exe可执行文件详解流程

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

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

Python实现学生管理系统并生成exe可执行文件详解流程

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

Python实现学生管理系统并生成exe可执行文件详解流程

这时候开始打包,在命令提示符窗口输入pyinstaller -F -w加上你的代码文件名,一定带上后缀.py

Python实现学生管理系统并生成exe可执行文件详解流程

这里解释一下,-F 是生成exe文件的,一定要用大写,不然会失败;-w大写小都可以,它是解决打包成功后运行exe文件会闪黑框问题,尽量加上,你也不想发给别人装逼的时候被挑刺吧。

然后回车开始打包

Python实现学生管理系统并生成exe可执行文件详解流程

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

Python实现学生管理系统并生成exe可执行文件详解流程

Python实现学生管理系统并生成exe可执行文件详解流程

运行一下看看

Python实现学生管理系统并生成exe可执行文件详解流程

新建信息

Python实现学生管理系统并生成exe可执行文件详解流程

查询信息

Python实现学生管理系统并生成exe可执行文件详解流程

好家伙,是不是简简单单!

来源:https://blog.csdn.net/ooowwq/article/details/121793107

标签:Python,学生管理系统,生成exe
0
投稿

猜你喜欢

  • smarty模板嵌套之include与fetch性能测试

    2024-05-03 15:49:53
  • Python+Matplotlib+LaTeX玩转数学公式

    2022-01-03 22:10:38
  • 基于prototype扩展的JavaScript常用函数库

    2023-08-24 15:09:57
  • 详解Python中的各种函数的使用

    2022-03-23 22:09:52
  • dedecms中显示数字验证码的修改方法

    2024-06-05 09:39:40
  • python 实现网上商城,转账,存取款等功能的信用卡系统

    2022-05-26 15:19:36
  • python2和python3在处理字符串上的区别详解

    2021-10-07 03:29:31
  • Python中集合创建与使用详解

    2022-04-30 05:29:42
  • Python3使用requests包抓取并保存网页源码的方法

    2022-05-27 06:48:38
  • MySQL root密码的重置方法

    2024-01-18 14:39:42
  • Python3 如何开启自带http服务

    2023-07-27 14:33:46
  • oracle 字符串转成行

    2009-06-19 17:38:00
  • IBatis.net连接MySql 问题与故障的解决方案

    2011-06-02 09:38:00
  • tensorflow 模型权重导出实例

    2022-10-14 06:25:25
  • BootStrap3学习笔记(一)之网格系统

    2024-04-29 13:43:48
  • pytorch版本PSEnet训练并部署方式

    2021-01-06 09:41:18
  • 数据库性能测试之sysbench工具的安装与用法详解

    2024-01-18 15:20:34
  • Python实现简单猜数字游戏

    2021-03-22 14:31:50
  • Python DataFrame设置/更改列表字段/元素类型的方法

    2021-03-24 07:52:48
  • mac安装scrapy并创建项目的实例讲解

    2021-05-17 21:21:05
  • asp之家 网络编程 m.aspxhome.com