前言
今天给大家介绍Python实现课堂随机抽选提问并语音播报学生姓名实战案例,废话不多说直接开整~
开发工具
Python版本: 3.8
相关模块:
tkinter模块
time模块
random模块
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
核心功能设计
总体来说,我们这款课堂点名器实现的思路大致是,可以自定义设置班级学生姓名或者默认通过学号进行学生随机点名抽取,随机抽取到的学生将以语音播报的形式进行展示出来。
拆解需求,接下来我们可以通过以下几步进行实现:
排版布局设计
读取学生名单,如果不存在文件就使用模拟数据
随机打乱学生名单
实现对学生姓名的随机点名抽取语音播报功能
用来滚动显示学生名单
win32con模块安装
python -m pip install pypiwin32
排版布局设计
根据点名器所需要的功能,首先我们可以进行排版布局设计,我们这次主要使用TKinter模块。主要包含了读取学生名单,如果不存在文件就使用模拟数据、随机打乱学生名单、实现对学生姓名的随机点名抽取语音播报功能、用来滚动显示学生名单等。
核心设计代码
root = tkinter.Tk()
# 窗口标题
root.title('随机提问')
# 窗口初始大小和位置
root.geometry('260x180+400+300')
# 不允许改变窗口大小
root.resizable(False, False)
# 关闭程序时执行的函数代码,停止滚动显示学生名单
def closeWindow():
if rolling.get():
showinfo('不能关闭', '请先停止名单滚动')
return
root.destroy()
root.protocol('WM_DELETE_WINDOW', closeWindow)
# 读取学生名单,如果不存在文件就使用模拟数据
try