Python制作一个简单的学生管理系统,并打包为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(输入的内容) 是否 等于 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回车打开命令提示符窗口。

在这里插入图片描述

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

在这里插入图片描述

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

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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

然后回车开始打包

在这里插入图片描述

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

在这里插入图片描述在这里插入图片描述

运行一下看看

在这里插入图片描述

新建信息

在这里插入图片描述

查询信息

在这里插入图片描述

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


这里我为大家准备了一份针对零基础的Python学习资料,有兴趣的同学可以看看哦。

「 Python经验分享 」

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家免费分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
9f49b566129f47b8a67243c1008edf79.png

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

8c4513c1a906b72cbf93031e6781512b.png

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

afc935d834c5452090670f48eda180e0.png

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

252731a671c1fb70aad5355a2c5eeff0.png

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

6c361282296f86381401c05e862fe4e9.png

d2d978bb523c810abca3abe69e09bc1a.png

这份完整版的Python全套学习资料已经上传CSDN
朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值