Python脚本自动查收作业及未交名单

需积分: 13 0 下载量 191 浏览量 更新于2024-08-05 收藏 1KB TXT 举报
在这个Python脚本中,我们看到了一个自动化工具,用于辅助班委或课代表检查同学们是否已经提交作业。主要针对的情况是,当收作业时需要逐个核对学生名单,查看哪些学生还未提交。该脚本利用Python编程语言,特别是`xlrd`库来读取Excel文件,以及`os`库来处理文件系统操作。 **主要知识点:** 1. **脚本结构与功能**: - 脚本使用`-*-coding:utf-8-*-`注释,声明编码为UTF-8,确保跨平台兼容。 - 作者BYH创建了一个简单的命令行交互式程序,用户通过输入指定的文件夹路径,查找包含学生姓名和作业文件的目录。 2. **文件读取**: - `import xlrd`导入Excel读取模块,用于后续读取班级名单。 - 使用`os.listdir(path)`获取指定路径下的所有文件和子目录名称。 - `excelpath`变量存储了预设的名单Excel文件路径,用户可以根据实际情况修改。 3. **数据处理**: - `sheet_1 = f1.sheet_by_index(0)`选择第一个工作表。 - `name = sheet_1.col_values(0)`提取Excel文件中的第一列(通常为学生姓名列)。 - 使用列表推导式,解析文件名以提取班级名,并将结果与姓名列表进行对比。 4. **判断提交状态**: - `f2 = [f2[i].split(".")[0].split("班")[-1] for i in range(len(f2))]`将文件名拆分成班级名。 - 删除“名单”文件,因为它不是学生的作业。 - 检查`name`列表中是否有与`f2`列表相同的元素,剩余的就是未提交作业的学生名字。 5. **输出结果**: - 打印已提交作业的同学列表。 - 打印尚未提交作业的同学列表,帮助班委快速识别遗漏的学生。 6. **注意事项**: - 提醒用户作业文件的命名必须遵循特定格式:“(可加学号也可以不加)+班级+姓名.任意后缀”,且文件名中必须包含“班”这个关键词,以作为识别符。 通过这个脚本,班委或课代表可以轻松地避免手动查找作业是否齐全,提高管理效率。这展示了Python在日常工作中如何简化繁琐任务,尤其是对于需要频繁处理大量数据的场景。