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查看FTP是否能连接成功的方法
Jul 30 Python
浅谈Python中函数的参数传递
Jun 21 Python
pycharm中使用anaconda部署python环境的方法步骤
Dec 19 Python
Python实现操纵控制windows注册表的方法分析
May 24 Python
Python面向对象之类和实例用法分析
Jun 08 Python
python 实现兔子生兔子示例
Nov 21 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
Feb 26 Python
Python暴力破解Mysql数据的示例
Nov 09 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
Nov 28 Python
python b站视频下载的五种版本
May 27 Python
python常见的占位符总结及用法
Jul 02 Python
Python开发五子棋小游戏
May 02 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
PHP中函数内引用全局变量的方法
2008/10/20 PHP
令PHP初学者头疼十四条问题大总结
2008/11/12 PHP
解析php中array_merge与array+array的区别
2013/06/21 PHP
Yii实现多按钮保存与提交的方法
2014/12/03 PHP
PHP中如何使用session实现保存用户登录信息
2015/10/20 PHP
详解PHP的Yii框架中的Controller控制器
2016/03/29 PHP
php 字符串中是否包含指定字符串的多种方法
2018/04/12 PHP
JavaScript CSS修改学习第三章 修改样式表
2010/02/19 Javascript
table行随鼠标移动变色示例
2014/05/07 Javascript
jquery实现textarea输入框限制字数的方法
2015/01/15 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
js实现右键菜单功能
2016/11/28 Javascript
jQuery代码实现实时获取时间
2017/01/29 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
JS中实现函数return多个返回值的实例
2017/02/21 Javascript
JavaScript数组_动力节点Java学院整理
2017/06/26 Javascript
vue中keep-alive的用法及问题描述
2018/05/15 Javascript
mpvue将vue项目转换为小程序
2018/09/30 Javascript
微信小程序提交form操作示例
2018/12/30 Javascript
vue中的mvvm模式讲解
2019/01/31 Javascript
小程序的上传文件接口的注意要点解析
2019/09/17 Javascript
Python简单连接MongoDB数据库的方法
2016/03/15 Python
Python实现检测文件MD5值的方法示例
2018/04/11 Python
pandas数据框,统计某列数据对应的个数方法
2018/04/11 Python
python库lxml在linux和WIN系统下的安装
2018/06/24 Python
Python实现连接MySql数据库及增删改查操作详解
2019/04/16 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
解决django的template中如果无法引用MEDIA_URL问题
2020/04/07 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
美国男士西装打折店:Jos. A. Bank
2017/11/13 全球购物
顶岗实习计划书
2014/01/10 职场文书
中国文明网向国旗敬礼活动精彩寄语2014
2014/09/27 职场文书
感谢信的技巧及范例
2019/05/15 职场文书
python opencv检测直线 cv2.HoughLinesP的实现
2021/06/18 Python
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js
nginx容器方式反向代理实战
2022/04/18 Servers