python - 将Excel列中的数据读取到Python列表中

标签 python excel xlwings

我正在使用 python xlwings 读取 Excel 2013 中的一列数据。A 列填充有数字。要将这一列导入到 python 列表 py_list 中,我有以下代码;

import xlwings as xw

wb = xw.Book('BookName.xlsm')
sht = xw.Book('SheetName')
py_list = sht.range('A2:A40').value

如果列数据填充在 A2:A40 处,则上述代码有效。然而,列数据可以不断增长。数据可以增长并延伸至 A2:A46A2:A80。最后一行是空的。在编译时并不知道该列中有多少行数据。

如何修改代码以检测最后一行的空单元格,以便 py_list 可以读取该范围的数据?

除了 xlwings 之外,我愿意使用其他 python 库来读取 Excel 数据。我正在使用 python v3.6

最佳答案

关于从 csv 或 excel 读取文件,我说了很多,但我会使用 pandas .

import pandas as pd

df = pd.read_excel('filename.xlsm', sheetname=0) # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist()

另一种方法是使用动态公式,使用 Excel 中的 OFFSET 之类的东西代替 'A2:A40',或者可能是命名范围?

关于python - 将Excel列中的数据读取到Python列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45708626/

相关文章:

excel - Powershell - 将 .XLS 文件转换为 .XLSX

python - xlwings支持 "Wrap Text"属性吗?

python-2.7 - xlwings 是否需要 excel 安装

python - 通过在 Python 中读取文件获取列表

python - 用 Python 解析文本文件?

python - 将列表分成两个单独的列表,由 python 中的每个其他项目

excel - 为什么同时存在 Worksheet 和 Sheet 对象?

arrays - 如何在只有某些条件需要为 TRUE 的数组公式中包含 OR - Excel 第 3 部分

excel - 无法从 Excel 中完全删除 xlwings 插件

python - 使用Python request.get param 但它给了我错误的url