【Python 模块】 xlrd 操作 Excel 文件

安装 & 加载

pip3 install xlrd -i https://mirrors.aliyun.com/pypi/simple/

import xlrd

打开 Excel 文件

path = 'data/在线表格2.0.xlsx'
data = xlrd.open_workbook(path)

获取 sheet 名称

# 返回所有的 sheet 名称
names = data.sheet_names() # 返回类型为是一个列表

mark

得到表格对象

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0)

行操作

得到有效行

# 获取该表格中的有效行数
nrows = table.nrows

mark

得到行对象

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0)

# 获取该把表格中的有效行数
rows = table.nrows

# 使用有效行去遍历 得到行对象
for r in range(rows):
    v = table.row(r)
    print(v)

mark

获得具体数据

这是通过行对象获取数据

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0)

# 获取该把表格中的有效行数
rows = table.nrows

# 使用有效行去遍历 得到行对象
for r in range(rows):
    o,t,s = table.row(r)[0].value,table.row(r)[1].value,table.row(r)[2].value
    print(o,t,s)

mark

直接获取一行的数据,然后组成 list

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0) #通过索引顺序获取
# 获取该把表格中的有效行数
rows = table.nrows
# 使用有效行去遍历 得到行对象
for r in range(rows):
    o= table.row_values(r)
    print(o)

mark

列操作

获取有效列

# 获取该表格中的有效行数
cols = table.ncols
print(cols)

mark

得到列对象

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0) #通过索引顺序获取
# 获取该把表格中的有效列数
cols = table.ncols
# 使用有效行去遍历 得到列对象
for c in range(cols):
    t = table.col(c, start_rowx=0, end_rowx=None)
    print(t)

mark

获得具体数据

这是通过列对象获取数据

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0) #通过索引顺序获取
# 获取该把表格中的有效列数
cols = table.ncols
# 使用有效行去遍历 得到列对象
for c in range(cols):
    t = table.col(c)[0].value
    print(t)

mark

直接获取一行的数据,然后组成 list

# 通过索引获取 操作的表格对象
table = data.sheet_by_index(0) #通过索引顺序获取
# 获取该把表格中的有效列数
cols = table.ncols
# 使用有效行去遍历 得到列对象
for c in range(cols):
    t = table.col_values(c)
    print(t)

mark

常用函数合计

path = 'test.xlsx'
# 读取文件
data = xlrd.open_workbook(path)

data.sheet_names() # 返回所有的 sheet 名称的 list

table = data.sheet_by_index(0) # 通过索引获取 操作的表格对象 

table = data.sheet_by_name(sheet_name)#通过名称获取 操作的表格对象

行操作

nrows = table.nrows  # 获取该sheet中的有效行数

table.row(rowx)  # 返回由该行中 所有的单元格对象 组成的列表

table.row_types(rowx, [start_colx=0],[ end_colx=None])    # 返回由该行中所有单元格的数据类型组成的列表

table.row_values(rowx, [start_colx=0],[ end_colx=None])   # 返回由该行中 所有单元格的数据 组成的列表

table.row_len(rowx) # 返回 该列的 有效单元格长度

列操作

ncols = table.ncols   # 获取列表的 有效列数

table.col(colx, [start_rowx=0],[ end_rowx=None])  # 返回由该列中 所有的单元格对象 组成的列表

table.col_types(colx, [start_rowx=0],[ end_rowx=None])    #返回由该列中 所有单元格的数据类型 组成的列表

table.col_values(colx, [start_rowx=0], [end_rowx=None])   #返回由该列中 所有单元格的数据 组成的列表
发表评论 / Comment

用心评论~