使用 python 从 xlsx 文件中提取特定行到列表

Extract specific row from xlsx file to a list using python

我想从 .xlsx 文件中提取特定行(假设现在我已经有了行号)到列表中。另外,我不知道是否可以,但将第一列作为列表的名称。

例如:table 我想从中提取信息:

                   12/31/2020    12/31/2019    12/31/2018    12/31/2017
Revenue          1.823500e+11  1.614020e+11  1.369580e+11  1.110240e+11
Revenue Growth   1.298000e-01  1.785000e-01  2.336000e-01  2.373000e-01
Cost of Revenue  8.473200e+10  7.189600e+10  5.954900e+10  4.558300e+10
Gross Profit     9.761800e+10  8.950600e+10  7.740900e+10  6.544100e+10

如果可能的话,我想按以下顺序获取信息:Revenue = ["1.8235E+11", "1.61402E+11", "1.36958E+11" , "1.11024E+11"]

我已经尝试使用 xlrd 来完成这项工作,但我总是收到一条消息

xlrd.biffh.XLRDError: Excel xlsx file; not supported

提前致谢并感谢您的帮助!

安装 openpyxl 然后使用 read_excel:

# Python env: pip install openpyxl
# Anaconda env: conda install openpyxl

df = pd.read_excel('data.xlsx', index_col=0, engine='openpyxl')
print(df)

# Output:
                   12/31/2020    12/31/2019    12/31/2018    12/31/2017
Revenue          1.823500e+11  1.614020e+11  1.369580e+11  1.110240e+11
Revenue Growth   1.298000e-01  1.785000e-01  2.336000e-01  2.373000e-01
Cost of Revenue  8.473200e+10  7.189600e+10  5.954900e+10  4.558300e+10
Gross Profit     9.761800e+10  8.950600e+10  7.740900e+10  6.544100e+10

要提取行 Revenue,请使用:

Revenue = df.loc['Revenue']