用 header 加载 excel sheet 的最短代码?

Shortest code to load an excel sheet with header?

我有一个 excel 文件,我想从中加载特定的 sheet。假设我知道它的名字,并且只有一行 header,那么最短的代码是什么?

假设您已经 xlrd 安装,

from xlrd import open_workbook

# Load file
filename = 'file.xls'
sheet = open_workbook(filename).sheet_by_name('Data')

# Read data
header = [sheet.row(0)[i].value for i in range(sheet.ncols)]
data = [[sheet.row(i)[j].value for j in range(sheet.ncols)] for i in range(1, sheet.nrows)]

如果你有pandas,那真的很简单:

import pandas as pd
xl = pd.ExcelFile('file_name.xlsx')
sht = xl.parse('Sheet1')

使用 pandas' read_excel 函数你可以这样做:

import pandas as pd
df = pd.read_excel(FILENAME)

您的文档将加载到 df 数据框中。

如果您需要跳过行、操作 headers、解析日期等,您还可以将其他选项传递给 read_excel