好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

当Python遇上Excel

今天是年初七,大家快要上班了,来和Paradoxical一起学习一下如何用Python操作Excel吧~

Paradoxical在春节假期也没有闲着,继续学习着Python,其中学会用Python操作Excel就是最大的收获。

首先我们要安装openpyxl库,在命令行输入“pip install openpyxl”即可。接下来说一下3个比较关键的对象。

工作簿对象Workbook

一个工作簿就是一个Excel文件,里面可以包含多个工作表。

工作表对象Worksheet

一个工作表对象就是工作簿里的表,里面包含多个单元格。

单元格对象Cell

单元格就是Excel存放数据的地方。

下面我们来学习一下openpyxl的用法。首先新建一个Excel文件,在里面写入一些测试用的数据。

打开工作簿文件

可以使用load_workbook()或者Workbook()打开一个已有的工作簿。

 import openpyxl as xl     #方法1  wb = xl.load_workbook('test.xlsx')     #方法2  wb2 = xl.Workbook('test.xlsx') 

工作表操作

工作簿的active属性或者get_active_sheet()可获取打开Excel表时看到的工作表。

 wb.active     wb.get_active_sheet() 

此外,还可以用get_sheet_by_name()根据工作表的名字获取工作表。

wb.get_sheet_by_name('Sheet1')

创建工作表。

 #默认以Sheet + 数字的形式创建一个工作表  wb.create_sheet()     #指定工作表的名字  wb.create_sheet('newSheet')     #指定工作表的名字和位置  wb.create_sheet('newSheet', 0) 

查看和修改工作表的名字。

 #该属性返回一个列表  wb.sheetnames     #也可以用迭代的方式查看  for sheet in wb:      print(sheet.title)        #可以直接对工作表对象修改  wb.active.title = 'Sheet0' 

删除工作表。

 #方法1  Sheet0 = wb.get_sheet_by_name('Sheet0')  wb.remove(Sheet0)     #方法2  del wb['Sheet0'] 

获取工作表最大行列数。

 #最大行数  wb.active.max_row     #最大列数  wb.active.max_column 

单元格操作

获取单个单元格。

 #第一个参数是行,第二个参数是列  wb.active.cell(2, 1)     #通过单元格名字获取  wb.active['A1'] 

获取多个单元格。

 #这种方法冒号前需要区域左上角和右下角的单元格  wb.active['A1': 'B2']     #获取单列的单元格  wb.active['A']     #获取多列的单元格  wb.active['A:C']     #获取单行的单元格  wb.active[1]     #获取多行的单元格  wb.active[1:2] 

获取和修改单元格的值。

 #获取单元格的值  wb.active['A1'].value     #修改单元格的值  wb.active['A1'].value = 3 

保存为文件。

#需要指定文件路径wb.save('test.xlsx')

查看更多关于当Python遇上Excel的详细内容...

  阅读:31次