python--openpyxl模块使用, 对excel表格的操作
一.安装
二.使用
python中对excel表格操作的插件有很多,比如xlwd\xlrt. 而openpyxl只支持excel03之后的版本
1.写入
from openpyxl import Workbook wb = Workbook() #创建工作簿 wb1 = wb.create_sheet('index',0) #修改名称 wb1.title = 'test' # 添加数据 wb1['A1'] = 4 wb1['A2'] = 5 # 添加函数 wb1['A3'] = '=sum(A1:A2)' # 添加数据的第二种方式 wb1.cell(row=2,column=3,value='cell插入的值') # 添加一行数据 wb1.append(['姓名','年龄','address']) # 添加一个空行 wb1.append([]) # 添加一行数据 wb1.append(['xxx','18','北京']) wb.save('1.xlsx')
结果
2.读取
用上面的表作为示例
from openpyxl import load_workbook wb = load_workbook('1.xlsx', data_only=True) # 还有一个参数 read_only = True # 获取工作簿的名称 print(wb) # <openpyxl.workbook.workbook.Workbook object at 0x00000231EE0C30B8> wb1 = wb['test'] # 读方式1 print(wb1['A2'].value) # 读函数的时候,要加data_only=True, 要手动的修改并保存 print(wb1['A5'].value) # 读的第二种方法 print(wb1.cell(row=3, column=1).value) # 获取所有行的数据 for row in wb1.rows: # 获取每一个单元格的数据 for c in row: print(c.value) # 获取所有列的数据 for column in wb1.columns: # 获取每一个单元格的数据 for r in column: print(r.value) # 获取最大的行数 print(wb1.max_row) # 6 # 获取最大的列数 print(wb1.max_column) # 3