python - 如何组合代码来打印不同表格中的不同单元格?

标签 python

我正在将 docx 格式的表中的数据提取到 xlsx 中。我可以使用下面的代码从一个到另一个(部分)获取数据。这个例子只显示了 4 个案例,但我需要为 40 个表执行此操作。有没有一种方法可以将其组合起来,以便仅用 1/2 行代码即可在所有 4 个表中查找?

table = doc.Tables(5)
table5 = table.Cell(Row =4, Column =2).Range.Text

table = doc.Tables(6)
table6 = table.Cell(Row =4, Column =2).Range.Text

table = doc.Tables(7)
table7 = table.Cell(Row =4, Column =2).Range.Text

table = doc.Tables(8)
table8 = table.Cell(Row =4, Column =2).Range.Text

#print(table5)

combine_Table = {'Name': [table5 , table6, table7, table8]}
labels = ['a','b','c','d']

df = pd.DataFrame(combine_Table , index=labels)
#print("Select specific columns:")
#print(df[['Name']])

df.to_excel("return.xlsx")

图书馆 将 pandas 导入为 pd 将 win32com.client 导入为 win32

最佳答案

一个简单的循环就可以完成这项工作...

tables = []
for i in range(5, 9):
    table = doc.Tables(i)
    tables.append(table.Cell(Row =4, Column =2).Range.Text)

combine_Table = {'Name': tables}
labels = ['a','b','c','d']

df = pd.DataFrame(combine_Table , index=labels)

df.to_excel("return.xlsx")

修改range()值取决于您拥有多少(以及哪些)表。

关于python - 如何组合代码来打印不同表格中的不同单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60432518/

相关文章:

python - 与 houghlines opencv+python 平行的线

python - 基于python中的条件绘制多色线

python - 保存 python TempFile 的快速方法?

python - 如何将列添加到空的 Pandas 数据框中?

python - 包名中的 "cx_"前缀代表什么?

python - 如何在 matplotlib 中的刻度标签和轴之间添加空格

仅python记录特定级别

python - 使用 xpath 查找表元素中的所有 tr?

python - 如何在 SciPy 中创建对角稀疏矩阵

python - 描述符 'getter' 需要一个 'property' 对象,但收到一个 'function'