openpyxl:find每一列的最高行

我是python编程的新手。 我已经写了一个脚本来从api获取数据(使用Python 2.7.8),现在我想将它添加到Excel电子表格中,我保留所有的数据。

在我的电子表格中,每行都是一天,但是一些数据直到30天之后才会变得可用,所以我的一些列并没有满到当前date。 基本上,不是所有的列长度都是一样的。

我想阅读每一列,find该列的最高行,然后将我的数据点添加到该列的末尾。 如果所有列的长度相同,这将是简单的,但我不明白如何分别find每列的长度。

我已经通读了关于openpyxl的文档,但是我对Python很陌生,我并不是很了解所有的东西。 我认为解决scheme将涉及到像'为每列,得到最高的行',然后我将追加每个数据点到该列。 但我不明白如何做“每列”的一部分。 find每一列的长度也将工作。

提前致谢

编辑:我想出了一个工作:我知道列的相对长度,所以我从最后一行的数字减去:

last_row = ws.get_highest_row() + 1 col_num = 1 dataRow_length = len(dataRow) row_offset = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 7, 14, 28, 1, 2, 3, 7, 14, 28] for i in range(0, dataRow_length - 1): ws.cell(row=(last_row - row_offset[col_num - 1]), column=col_num).value = dataRow[i] col_num = col_num + 1 

如果遍历工作表的行,您总是可以find一行的长度。 这应该足够你的目的。 如果没有,请提供一些您的代码,以便更清楚地知道您想要做什么。