当建立工作表对象ws成功后,会自动产生下列 数据产生器 (generators)属性。
□ rows: 工作表 数据产生器 以 行 方式包裹,每一行用一个元组(tuple)包裹。
□ columns: 工作表 数据产生器 以 列 方式包裹,每一列用一个元组(tuple)包裹。
程序实例ch3_16.py: 使用data3_16.xlsx工作簿的工作表1为实例,此工作表内容如下,输出ws.rows和ws.columns的数据类型。
执行结果
由于ws.rows和ws.columns是数据产生器,若是想取得它的内容须先将它们转换成列表(list),然后就可以用索引方式取得。
程序实例ch3_17.py: 列出data3_16.xlsx工作簿工作表1,特定 列 与 行 的信息。留意由于数据转成了列表,所以索引值是从0开始。本程序会列出 A列 数据和 索引2 这行(洪冰儒)数据。
执行结果
对于数据产生器而言,我们也可以不用转成列表,直接使用逐 行 方式获得全部的工作表内容。
程序实例ch3_18.py: 使用逐行方式获得data3_16.xlsx工作簿工作表1全部的内容。
执行结果
在上述执行结果中,由于第一行只有A1单元格有数据,此数据是跨行居中对齐,Python读取B2:E2的数据是None。
读者可能会想是否可以使用逐 列 方式获得全部的工作表内容,答案是可以的。
程序实例ch3_19.py: 使用逐列方式获得全部的工作表内容。
执行结果