python for循环遍历学生全部答题卡,读取word中第二章第一个表格第二列内容,将所有提取的内容,去除重复项,导出成excel
时间: 2023-06-12 17:04:20 浏览: 133
基于python实现一键将word中的表格提取到excel文件中
5星 · 资源好评率100%
假设你已经安装了python-docx和pandas这两个库,可以按照以下步骤实现:
1. 遍历学生全部答题卡,获取每个学生的word文件路径,保存在一个列表中。
2. 对于每个学生的word文件,使用python-docx读取第二章第一个表格的第二列内容,保存在一个列表中。
3. 将所有学生的列表合并成一个大列表。
4. 对于大列表中的内容,去重并保存在一个新的列表中。
5. 使用pandas将新的列表导出成excel文件。
下面是代码示例:
```python
import os
import pandas as pd
from docx import Document
# 1. 遍历学生全部答题卡,获取每个学生的word文件路径
student_files = []
for root, dirs, files in os.walk('path/to/student/folder'):
for file in files:
if file.endswith('.docx'):
student_files.append(os.path.join(root, file))
# 2. 对于每个学生的word文件,读取第二章第一个表格的第二列内容
all_contents = []
for file in student_files:
document = Document(file)
table = document.sections[0].tables[0]
contents = [cell.text for cell in table.column_cells(1)][1:]
all_contents.extend(contents)
# 3. 合并所有学生的内容成一个大列表
# all_contents = [contents1, contents2, ...]
# 4. 去重并保存在新的列表中
unique_contents = list(set(all_contents))
# 5. 导出成excel文件
df = pd.DataFrame({'Contents': unique_contents})
df.to_excel('output.xlsx', index=False)
```
注意替换代码中的路径和文件名,以适应你的实际情况。
阅读全文