用python操作excel读取
导入excel操作工具
File -> settings -> Project:xxx ->Python interpreter -> + ->搜索openpyxl ->install package 安装成功后可用下面语句导入
imput openpyxl
对象名
对象 | 对象名 |
---|---|
工作簿 | workbook |
表单 | sheet |
行 | row |
列 | column |
单元格 | Cell |
操作对象
操作工作簿对象
1.获取工作簿对象
wb = openpyxl.load_workbook('全校课表.xlsx')
2.遍历表单
print(wb.sheetnames)
for sheet in wb:
print(sheet.title)
操作表单对象
1.获取表单对象
sheet1 = wb.get_sheet_by_name('sheet1')
sheet2 = wb['Sheet2']
activeSheet = wb.active #获取活跃的表单,默认是第一张
2,创建表单
mysheet = wb.create_sheet('mySheet')
操作行、列对象
1.获取行对象
row = activeSheet[1] #获取整行
row_range = activeSheet[1:2] #获取指定n行
2.获取列对象
col = activeSheet['A'] #获取整列
col_range = activeSheet['A:B'] #获取指定n列
3.从行列角度操作整行或整列并且遍历
row = activeSheet[1]
col = activeSheet['A']
row_range = activeSheet[1:2]
col_range = activeSheet['A:B']
print(row)
print(col)
print(row_range)
print(col_range)
for col in col_range: #从列开始遍历
for cell in col:
print(cell.value)
for row in row_range: #从行开始遍历
for cell in row:
print(cell.value)
for row in activeSheet.iter_cols(min_row=3,max_row=4,min_col=3,max_col=4): #用迭代器迭代指定的行列
for cell in row:
print(cell.value)
print(tuple(activeSheet.rows)) #打印所有元组
操作单元格对象
1.获取单元格对象
表单对象['A1'] #获取一个单元格
cell_range = 表单对象['A1:C3']
2.打印值
print(activeSheet['A1'].value) #打印指定单元格的值
print(A1.coordinate,A1.value) #打印坐标和值
#利用表单的cell方法找到指定单元格并且输出值
print(activeSheet.cell(row=1,column=1).value)
#利用循环自动输出
for i in range(2,20,1):
print(i,activeSheet.cell(row=i,column=1).value)
#从单元格角度操作单元格
cell_range = activeSheet['A1:C3']
for row in cell_range:
for cell in row:
print(cell.coordinate,cell.value)
print('-----end-----')
打印总行列数
print('{} * {}'.format(activeSheet.max_row,activeSheet.max_column))