目录
1.2.1 xlrd模块的安装
在Python中操作Excel主要用到xlrd和xlsxwriter这两个库。xlrd用来高效地读取excel表格数据,而xlsxwriter则用来写excel。新版的xlrd不支持xlsx格式的excel文件,如需处理xlsx格式的excel,需安装1.2.0之前的版本,安装命令为:pip install xlrd==1.2.0。如不许处理xlsx格式的excel文件,则直接在命令行中执行以下命令:
pip install xlrd
1.2.2 构造workbook对象
使用xlrd模块对Excel文件进行读取操作,需要先构造一个workbook对象。通过xlrd模块的open_workbook方法即可构造workbook对象。
xlrd.open_workbook(filename,encoding="utf-8") | (1)filename表示excel文件的路径 (2)encoding表示文件的编码,默认为utf-8 (3)函数返回一个 xlrd.book.Book对象 |
构造workbook对象的代码实例:
import xlrd
# 对当前目录下的demo.xlsx文件进行读操作
workbook = xlrd.open_workbook("demo.xlsx")
1.2.3 获取工作表Sheet
构造好workbook对象以后,可通过工作表索引,名称来获取工作表:
workbook.sheets() | 该方法返回一个列表,通过列表索引可获取sheet。e.g.: workbook.sheets()[0] |
workbook.sheet_by_index(sheet_index) | 通过sheet_index指定的索引来获取sheet。e.g.:workbook.sheet_by_index(0) |
workbook.sheet_by_name(sheet_name) | 通过sheet_name指定的工作表名称来获取 sheet。 e.g.:workbook.sheet_by_name("sheet1") |
workbook.sheet_names() | 获取所有工作表的名称 |
1.2.4 处理表格行
获得工作表对象Sheet以后,可通过以下方法来操作表格行:
Sheet.nrows | 返回sheet中的有效行数 |
Sheet.row(rowx) | 返回rowx行编号对应的行记录,行记录是一个由所有单元格对象组成的列表 |
Sheet.row_types(rowx, start_colx=0,end_colx=None) | 返回rowx行编号对应的行记录,行记录是一个由start_colx到end_colx之间的列数据类型所组成的列表 |
Sheet.row_values(rowx, start_colx=0,end_colx=None) | 返回rowx行编号对应的行记录,行记录是一个由start_colx到end_colx之间的数据列所组成的列表 |
Sheet.row_len(rowx) | 返回rowx行的有效单元格数量 |
1.2.5 处理表格列
获得工作表对象Sheet以后,可通过以下方法来操作表格列:
Sheet.ncols | 返回sheet中的有效列数 |
Sheet.col(colx, start_rowx=0,end_rowx=None) | 返回start_rowx行编号到end_rowx行编号之间的所有列 |
Sheet.col_types(colx, start_rowx=0,end_rowx=None) | 返回colx列编号对应的列记录,列记录是一个由start_rowx到end_cols之间的行数据类型所组成的列表 |
Sheet.col_values(colx, start_rowx=0,end_rowx=None) | 返回colx列编号对应的列记录,列记录是一个由start_rowx到end_rowx之间的行数据所组成的列表 |
1.2.6 处理表单元
获得工作表对象Sheet以后,可通过以下方法来操作表格单元:
Sheet.cell(rowx, cols) | 返回rowx行编号与colx列编号对应的单元格对象 |
Sheet.cell_type(rowx, colx) | 返回rowx行编号与colx列编号对应的单元格数据类型 |
Sheet.cell_type(rowx, colx) | 返回rowx行编号与colx列编号对应的单元格数据 |
1.2.7 系统学习Python
薯条老师的博客:http://www.chipscoco.com, 提供高质量Python,Java自学教程。关注薯条老师的微信公众号【薯条编程】, 免费领取Python,Java学习资料。