教师节我用Python做了个学生点名系统送给老师当礼物,这回毕业稳了
今年教师节前夕,我特意用Python做了个学生点名系统,非常好用,送给各科老师、辅导员当节日礼物,老师们都喜滋滋,说平常逃课就原谅我了,我心想,这次毕业应该不是问题了~
本文背景
根据我的调查,现在的学生大部分都很积极,会主动举手回答问题。但是,也会遇到一些不好的情况,比如年级越高主动举手的人越少,有些班级举手的通常都是少部分积极的学生,有部分学生从来不举手。
所以我做了一个一个随机的学生点名系统可以帮老师解决这些问题。
随机点名会从全班学生中随机点一个学生,这样所有人都有机会回答问题,促进教育公平。
点名系统有几秒钟滚动的时间,会增加学生的紧张感,让开小差的学生也赶紧集中精神,起到一点督促学习的作用。
如果真的没有学生举手,老师也不用为难,点名系统可以作为老师的“杀手锏”。
实际情况中可以一部分时间靠学生主动,一部分时间用点名系统,灵活使用。
效果展示
本文用Python实现了一个非常好用的学生点名系统,文末名片提供打包好的系统下载方式。先看一下效果:
实现方式
1、读取excel表格
openpyxl是Python中用于读写excel文件非常方便的库,pip install openpyxl安装即可使用。
本文用openpyxl来读取excel中的所有学生姓名。
def get_students_name():# 学生名单中需要有"姓名"列workbook = openpyxl.load_workbook('学生名单.xlsx')table = workbook.activerows, cols = table.max_row, table.max_columnname_col = 0for col in range(cols):if table.cell(1, col + 1).value == '姓名':name_col = colbreakstudents_name = [table.cell(row+1, name_col+1).value for row in range(1, rows)if table.cell(row+1, name_col+1).value is not None]return students_name
2、搭建系统界面
tkinter是Python中GUI编程非常好用的库,而且是标准库,不需要安装,导入即可使用。
本文用tkinter搭建学生点名系统的界面,并在界面上实现点名按钮和显示点名结果。
if __name__ == '__main__':window = tk.Tk()window.geometry('600x400+400+180')window.title('\t 第一届LOL点名系统')# 添加背景图片bg_png = tk.PhotoImage(file="背景图片.png")bg_label = Label(window, image=bg_png)bg_label.pack()# 添加显示框var = StringVar(value='公平 公正 公开')show_label1 = Label(window, textvariable=var, justify='left', anchor=CENTER, width=16,height=2, font='楷体 -40 bold', foreground='white', bg='#1C86EE')show_label1.place(anchor=tk.NW, x=130, y=90)# 添加点名按钮button_png = tk.PhotoImage(file='button.png')button = Button(window, text='点 名', compound='center', font='楷体 -30 bold',foreground='#9400D3', image=button_png,command=lambda: call_lucky_student(var))button.place(anchor=NW, x=235, y=200)# 显示窗口window.mainloop()
3、随机选择学生
random库是Python中用于实现随机功能的库,也是Python的标准库,不需要安装,导入即可使用。
本文用random从学生名单中随机选择一个姓名,结合time模块设置延时,实现点名按钮的业务逻辑函数。
def call_lucky_student(var):"""点名"""global is_runif is_run:returnis_run = Truestart = time.time()choice_student(var, start)def choice_student(var, start):global is_runshow_member = random.choice(get_students_name())name = show_member[0]for zi in show_member[1:]:name += ' ' + zivar.set(name)end = time.time()if is_run and end-start <= 5:window.after(30, choice_student, var, start)else:is_run = Falsereturn
4、将代码打包成exe
pyinstaller库是用于将Python程序打包成exe可执行文件的库,pip install pyinstaller安装即可使用。
本文用pyinstaller将点名系统的代码打包成exe文件,这样系统可以发给老师使用,不懂编程也没关系。
使用说明和下载方式
使用说明:
1.下载本系统后,解压文件,将整个文件夹保存到电脑中(建议不要放在桌面)。
2.打开学生名单excel表格,将学生姓名和学号输入表格中,保存。(删除本文的虚拟名单)
3.找到student.exe ,右键创建一个桌面快捷方式。
4.在桌面双击打开点名系统,即可正常使用。
下载方式:
完整代码和打包好的学生点名系统在下方点击二维码关注即可自取。
运行代码需要的背景图片,按钮图片,以及测试用的学生名单也可以一并获取。
以上就是本文的全部内容,如果你喜欢这个点名系统,欢迎点赞、评论和收藏。
推荐教程:Python实战100例
教师节我用Python做了个学生点名系统送给老师当礼物,这回毕业稳了相关推荐
- 教师节用python做个学生点名系统送老师,老师:真的谢谢你~
嗨害大家好鸭!我是小熊猫❤ 今年教师节和中秋一起过~ 我特意用Python做了个学生点名系统, 非常好用,送给各科老师.辅导员当节日礼物, 老师们都喜滋滋(是真的很喜欢) 说平常逃课就原谅我了,我心想 ...
- 教师节到了,用Python做了个非常好用的学生点名系统
教师节到了,用Python做了个非常好用的学生点名系统 教师节到了,祝伟大的老师们教师节快乐! 前言 我的亲人和朋友里有很多老师,根据我的调查,现在的学生大部分都很积极,会主动举手回答问题.但是,也会 ...
- python开发项目:学生选课系统
程序要求: 1.创建北京.上海两所学校(分析:通过学校类实例化两个学校实例) 2.创建Linux.python.go三个课程,Linux\go在北京开,Linux在上海开(创建Linux.python ...
- 千万别让老板知道 | Python做个人脸识别考勤系统
人脸识别考勤系统 实现思路如下: 下面讲解下核心代码 1. 读摄像头 2. 裁剪人脸 3. 识别面部68个关键点 4. 人脸向量化 5. 人脸对比 哈喽大家好,我是王某人. 现在好多公司都用人脸识别实 ...
- 【C语言优秀综合课程设计】学生点名系统的设计与实现(2021-07-09)
文章目录 一.摘要 二.页面截图 三.源代码 源码打包下载 提示:以下是本篇文章正文内容,下面案例可供参考 一.摘要 在高校自动化办公系统逐步普及的今天,课堂点名系统已遍地而飞.这种方式不仅省钱.省事 ...
- 如何用Python做一个简易学生信息管理系统
一.系统简介 实现一个学生信息的管理系统:主要功能有: 添加学生信息 删除学生信息 修改学生信息 查询学生信息 显示学生信息 退出当前系统 二.步骤分析 显示功能界面 用户输入功能序号 对不同序号的功 ...
- python做一个linux网卡,Linux系统Python可以选择不同网卡进行网络访问吗?
是这样的,我有一台远程的Linux服务器(Debian系统),上面有两块网卡,同样的IP. 我现在需要选择第二块网卡,因为这块网卡连上了CMCC的专线,可以进行一些CMCC的业务操作.但是默认的使用的 ...
- 用Python做了个图片识别系统(附源码)
来源丨码猴小明 项目介绍 本项目将使用python3去识别图片是否为色情图片,会使用到PIL这个图像处理库,并且编写算法来划分图像的皮肤区域 介绍一下PIL: PIL(Python Image Lib ...
- 明天就是七夕了,用Python做了个可能会被女朋友打死的礼物!
明天就是七夕了,晓得你们有女票的或者正在追妹子的,肯定又在绞尽脑汁想买什么别出新裁的礼物,如果女生感觉你的礼物花心思了,那肯定是好感度倍增啊. 今天给各位分享一个用 Python 制作的成本一毛钱却诚 ...
最新文章
- oc45--多对象内存管理 优化
- 完全命令行.NET开发
- B-Trees【设计数据密集型应用】
- MySQL的恢复脚本
- linux命令总结之traceroute命令
- boost::gregorian模块实现计算今年的元旦直到下一个元旦的日子的测试程序
- bdbus_lxb下载
- systemd.conf翻译
- atm系统的用例模型_ATM银行系统用例图.doc
- mysql all和distinct_mysql distinct 使用实例(过滤多余的重复记录)
- vue 引入vue-resource给页面加点动态数据
- 数据可视化实战案例分享
- python微信支付_微信支付 python版
- 【设计模式】职责链模式,MySQL+Tomcat+JVM,看完还怕面试官
- 干货分享:app推广新人如何做好应用商店推广
- 小白新人Python哪些基础知识必学?
- 计算机桌面 文字大小,怎样调整电脑字体大小_怎样调整字体大小
- RBP as a streaming server(一)
- Mac环境下安装MongoDB数据库
- “失败”的北漂十年,我真的尽力了。。。