====== 3.10 xlrd ======
===== -# 支持xlsx格式文件版本 =====
pip install xlrd==1.2.0
===== -# 安装 =====
https://www.cnblogs.com/tinglele527/p/11548595.html
用xlrd进行读取比较方便,流程和平常手动操作Excel一样,打开工作簿(Workbook),选择工作表(sheets),然后操作单元格(cell)。
===== -# 函数=====
==== - 打开工作簿 ====
''open_workbook()''
#文件名以及路径,如果路径或者文件名有中文给前面加一个r
import xlrd
workbook = xlrd.open_workbook(r'C:\Users\Desktop\工作簿1.xlsx') # 打开工作簿
==== - 打开工作表 ====
''sheet_by_index(0)''
''sheets()[0]''
''sheet_by_name('Sheet1')''
三个函数都会返回一个xlrd.sheet.Sheet()对象
''sheet_names()''
返回book中所有工作表的名字
''sheet_loaded(sheet_name or indx)''
检查某个sheet是否导入完毕
import xlrd
workbook = xlrd.open_workbook(r'C:\Users\Desktop\工作簿1.xlsx') # 打开工作簿
worksheet = workbook.sheet_by_name('Sheet1') # 三种方式获取工作表
==== - 读取单元格 ====
=== - 单个单元格 ===
''cell(0, 0).value''
''cell_value(0, 0)''
单元格的索引是二维的,第一个参数是所在行,第二个参数是所在列。需要注意的是,所有的索引都是从 0 开始计数的。
import xlrd
workbook = xlrd.open_workbook(r'C:\Users\Desktop\工作簿1.xlsx') # 打开工作簿
worksheet = workbook.sheet_by_name('Sheet1') # 三种方式获取工作表
cell_value = worksheet.cell_value(0, 0) # 获取单元格数据的两种方式
=== - 多个单元格 ===
一次性获取整行或者整列的数据,
''row(0)''
row(0) 表示获取第一行所有单元格数据,row(1) 表示获取第二行所有单元格数据。
''col(0)''
结果都是以列表的形式展示的。
可以通过遍历列表获得每一个 cell 对象,然后通过 value 属性取出每一个 cell 的值。
import xlrd
workbook = xlrd.open_workbook(r'C:\Users\Desktop\工作簿1.xlsx') # 打开工作簿
worksheet = workbook.sheet_by_name('Sheet1') # 三种方式获取工作表
for i in worksheet.row(0):
print(i.value) # 获取单元格数据
for i in worksheet.col(0):
print(i.value) # 获取单元格数据
=== - 整个单元格 ===
''worksheet 对象''
worksheet 对象有两个属性 nrows 和 ncols,分别表示当前的 Sheet 表的行数和列数。
import xlrd
workbook = xlrd.open_workbook(r'C:\Users\Desktop\工作簿1.xlsx') # 打开工作簿
worksheet = workbook.sheet_by_name('Sheet1') # 三种方式获取工作表
# 根据行获取所有单元格数据
for row in range(worksheet.nrows):
for i in worksheet.row(row):
print(i.value)
# 根据列获取单元格数据
for col in range(worksheet.ncols):
for i in worksheet.col(col):
print(i.value)