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


Posted in Python onJanuary 22, 2022

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

来 ,开搞!

一、准备工作

用到的软件准备一哈

  • 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可执行文件详解流程

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

到此这篇关于Python实现学生管理系统并生成exe可执行文件详解流程的文章就介绍到这了,更多相关Python 学生管理系统内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python爬虫抓取手机APP的传输数据
Jan 22 Python
WINDOWS 同时安装 python2 python3 后 pip 错误的解决方法
Mar 16 Python
Python单体模式的几种常见实现方法详解
Jul 28 Python
Python基于回溯法子集树模板解决数字组合问题实例
Sep 02 Python
python Flask实现restful api service
Dec 04 Python
python中实现数组和列表读取一列的方法
Apr 03 Python
Python画柱状统计图操作示例【基于matplotlib库】
Jul 04 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
Oct 14 Python
Python Unittest根据不同测试环境跳过用例的方法
Dec 16 Python
Django框架视图层URL映射与反向解析实例分析
Jul 29 Python
Python 3.8 新功能大揭秘【新手必学】
Feb 05 Python
Pytest allure 命令行参数的使用
Apr 18 Python
django中websocket的具体使用
Jan 22 #Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 #Python
梳理总结Python开发中需要摒弃的18个坏习惯
Jan 22 #Python
Pandas搭配lambda组合使用详解
Jan 22 #Python
Python中的tkinter库简单案例详解
Jan 22 #Python
解析python中的jsonpath 提取器
Jan 18 #Python
Python中如何处理常见报错
Jan 18 #Python
You might like
oracle资料库函式库
2006/10/09 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
基于php实现七牛抓取远程图片
2015/12/01 PHP
js验证表单大全
2006/11/25 Javascript
用Jquery选择器计算table中的某一列某一行的合计
2014/08/13 Javascript
js数值计算时使用parseInt进行数据类型转换(jquery)
2014/10/07 Javascript
Javascript编写俄罗斯方块思路及实例
2015/07/07 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
详解AngularJS Filter(过滤器)用法
2015/12/28 Javascript
基于jquery实现百度新闻导航菜单滑动动画
2016/03/15 Javascript
jQuery购物网页经典制作案例
2016/08/19 Javascript
Vue组件化通讯的实例代码
2017/06/23 Javascript
Node.js学习之查询字符串解析querystring详解
2017/09/28 Javascript
swiper在angularjs中使用循环轮播失效的解决方法
2018/09/27 Javascript
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
简单介绍Python中的RSS处理
2015/04/13 Python
Python模块的加载讲解
2019/01/15 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
python向图片里添加文字
2019/11/26 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
win10系统下python3安装及pip换源和使用教程
2020/01/06 Python
Numpy 理解ndarray对象的示例代码
2020/04/03 Python
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
STP的判定过程
2012/10/01 面试题
艺术专业大学生自我评价
2013/09/22 职场文书
文明餐桌活动方案
2014/02/11 职场文书
研修心得体会
2014/09/04 职场文书
法定代表人资格证明书
2014/09/11 职场文书
民用住房租房协议书
2014/10/29 职场文书
2014年收银工作总结
2014/11/13 职场文书
大学生村官工作总结2015
2015/04/09 职场文书