# examMap **Repository Path**: Interest-driven/exam-map ## Basic Information - **Project Name**: examMap - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-25 - **Last Updated**: 2026-06-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 教师考试参与信息汇总程序 ## 功能简介 自动将教师参与考试的信息汇总到总表中,支持批量处理多个考试文件。 ## 安装依赖 ```bash pip install -r requirements.txt ``` ## 基本使用 ### 1. 准备文件 在 `data` 目录下放置: - **总表**:文件名包含"总表"(如 `总表.xlsx`) - **考试表**:其他 `.xlsx` 或 `.xls` 文件 ### 2. 文件命名规范 考试文件建议使用以下格式命名: ``` 【1】2025年下半年教资考试-2.xlsx 【2】2025年下半年事业单位考试-1.xlsx ``` - `【数字】`:用于排序和作为总表列名 - `-数字`:表示考试天数,程序会自动提取 ### 3. 运行程序 ```bash # 使用默认 data 文件夹 python main.py # 指定其他数据目录 python main.py -p D:\path\to\data python main.py --path D:\path\to\data ``` ## 表格格式要求 ### 总表 | 要求 | 说明 | |------|------| | 第一行 | 必须是表头(如"教师姓名") | | 教师姓名 | 在 A 列(第一列),从第二行开始 | | 格式 | 支持 `.xlsx` 和 `.xls` | ### 考试表 | 要求 | 说明 | |------|------| | 第一行 | 必须是表头(如"教师姓名") | | 教师姓名 | 在 A 列(第一列),从第二行开始 | | 格式 | 支持 `.xlsx` 和 `.xls` | ## 输出结果 ### 总表更新 程序会在总表中添加: - **每列**:一场考试的参与天数 - **最后一行**:每场考试的参与人数统计 - **最后两列**: - 参加次数:教师参与的考试场数 - 参加天数(合计):教师参与的总天数 ### 日志文件 每次运行会在 `logs` 目录生成日志,记录: - 处理的文件列表 - 跳过的文件列表 - 每场考试的匹配结果 - 汇总报告(参与多场考试的教师、未参与任何考试的教师) ## 注意事项 ### 文件处理 1. **自动跳过已处理的文件**:如果总表中已有某考试的列,程序会跳过该文件 2. **自动添加新教师**:考试表中有但总表中没有的教师,会自动添加到总表末尾 3. **去重处理**:程序会自动去除教师姓名中的所有空白字符(空格、全角空格、制表符等) ### 文件过滤 程序会自动跳过: - 以 `~$` 开头的临时文件(Excel编辑时自动生成) - 以 `.` 开头的隐藏文件 ### 考试天数 1. **自动提取**:文件名以 `-数字` 结尾时自动提取(如 `考试-2` 提取为 2 天) 2. **手动输入**:文件名无 `-数字` 时提示用户输入 ### 排序规则 考试文件按 `【数字】` 中的数字从小到大排序,确保顺序正确(1, 2, 3... 10)。 ## 示例 ### 文件结构 ``` data/ ├── 总表.xlsx ├── 【1】2025年下半年教资考试-2.xlsx ├── 【2】2025年下半年事业单位考试-1.xlsx └── 【10】2026年信息技术考试-1.xlsx ``` ### 运行输出 ``` 执行时间: 2026-06-25 17:00:00 总表文件: 总表.xlsx 考试文件数: 3 ============================================================ 总表教师数: 5 已处理的考试: 无 【考试】【1】 (【1】2025年下半年教资考试-2) 从文件名提取天数: 2 考试文件中的教师数: 3 匹配结果: 匹配成功: 3 人 已写入列: 【1】 (天数=2) 【考试】【2】 (【2】2025年下半年事业单位考试-1) 从文件名提取天数: 1 ... 【本次执行汇总】 处理的文件 (3 个): - 【1】2025年下半年教资考试-2.xlsx - 【2】2025年下半年事业单位考试-1.xlsx - 【10】2026年信息技术考试-1.xlsx 跳过的文件 (0 个): 无 ```