用Python读写Excel文件
Python操作Excel需要三方库的支持,如果要兼容Excel 2007以前的版本,也就是xls
格式的Excel文件,可以使用三方库xlrd
和xlwt
,前者用于读Excel文件,后者用于写Excel文件。如果使用较新版本的Excel,即操作xlsx
格式的Excel文件,也可以使用openpyxl
库.
下面我们以xlwt
和xlrd
为例讲解如何读写Excel文件,大家可以先使用下面的命令在终端安装这两个三方库文件。
#安装 xlwt和xlrd
pip install xlwt xlrd -i https://pypi.doubanio.com/simple
#安装openpyxl
pip install openpyxl
1.使用xlwt和xlrd
读Excel文件(xls)
import xlrd
# 工作簿--->一个excel文件---workbook
wb = xlrd.open_workbook('test/阿里巴巴2020年股票数据.xls')
print(type(wb))
# 获取所有工作表的名字
print(wb.sheet_names())
# 获取指定的工作表 --->Sheet
# print(wb.sheet_by_name('sheet1'))
sheet = wb.sheet_by_index(0)
print(type(sheet))
# 获取工作表的行数和列数
print(sheet.nrows, sheet.ncols)
# 获取指定的行--->Row--->list[cell]
print(sheet.row(0))
print(sheet.row_slice(0, start_colx=0, end_colx=3))
# 获取指定的列 --->column--->list[cell]
print(sheet.col(4))
print(sheet.col_slice(4, start_rowx=1, end_rowx=11))
# 获取单元格的数据--->cell--->value
cell = sheet.cell(2, 2)
print(type(cell))
print(cell.value)
# 遍历整个表单
print(f'交易日期\t\t\t最高价\t\t最低价\t\t开盘价\t\t收盘价\t\t成交量\t\t调整收盘价')
for row in range(1, sheet.nrows):
for col in range(sheet.ncols):
value = sheet.cell(row, col).value
if col == 0