美文网首页
OpenPyXl的使用

OpenPyXl的使用

作者: 欧德朗 | 来源:发表于2019-01-04 18:13 被阅读0次

2019-01-04
OpenPyXl是一个Python的模块 可以用来处理excle表格
安装:
直接 pip install openpyxl就可以
使用时再代码内 from openpyxl import Workbook或者from openpyxl import load_workbook
前者 不需要有excle文件存在 后者需要传入一个excle文件
前者可以凭空产生一个 后者不行

openpyxl三步走

  • 获取work book
  • 获取 work sheet
  • 再然后 获取单元格 进行操作
  • 保存文件

ps : 获取位置的时候pos可以用pos = 'A'+ int 但是加的那个数字不能是 0 不然会报错

可以自己写一个爬 网站啥的 豆瓣啊 知乎啊 或者网易云的音乐

一、获取工作簿 就是一个excle层面的对象

from openpyxl import Workbook
from openpyxl import load_workbook 
wb = Workbook()
wb = load_workbook("temp.xlsx")
  • ps:如果不想在文件夹中创建一个excle文件就使用Workbook的方式,以上是获取工作簿的两个方法 第一种不需要加载文件 后者需要加载文件,

二、获取当前工作表sheet 当前谢特 也就是当前的翔哥

一个工作簿(workbook)在创建的同时也至少创建了一个工作表(worksheet),可以通过openpyxl.workbook.Workbook.active()的调用得到当前正在运行的工作表,

ws = wb.active
  • 注意:该函数调用工作表的索引(_active_sheet_index),默认是0。除非你修改了这个值,否则你使用该函数一直是在对第一张工作表进行操作。
    想要获取别的sheet的话可以使用:

    work_sheet = wb[sheet_name]#直接在work_book后面[ sheet_name ]
    
如何创建一个sheet

使用openpyxl.workbook.Workbook.create_sheet()新建一张表,报错的给出指令self._add_sheet(sheet=new_ws, index=index),

  • 就是说create_sheet可以传入两个参数,第一个就是sheet的名字,第二个 传0 或者不传

    ws1 = wb.create_sheet() #默认插在工作簿末尾
    #
    ws2 = wb.create_sheet(0) # 插入在工作簿的第一个位置
    #
    ws2 =  wb.create_sheet("YOURSHEET" , 0) #就是在工作簿的最前面创建一个工作表
    #
    ws.title = "New Title"#对某一个ws名字进行赋值
    

不传参数的话就sheet1、sheet2、sheet3····一直创建下去
sheet标签栏的背景色默认为白色,可以通过提供一个RRGGBB颜色码改变标签栏的字体颜色:

  ws.sheet_properties.tabColor = "1072BA"
  • 这个sheet名字变白 ,背景色变蓝 假装有个图片

  • 一旦知道了sheet的名字就可以通过workbook的key或者该工作表

    ws3 = wb["New Title"]
    ws4 = wb.get_sheet_by_name("New Title")
    
  • 可以通过openpyxl.workbook.Workbook.get_sheet_names()方法得到工作簿的所有工作表。

    print(wb.get_sheet_names())
    [u'YOURSHEET', u'Sheet', u'MYSHEET', u'Sheet1', u'Sheet2']
    
  • 你也可以循环得到所有的工作表

    for sheet in wb:
            print(sheet.title)
    

三、 往下就是操作单元格了

假装这是一个分割线 怎么用?

相关文章

网友评论

      本文标题:OpenPyXl的使用

      本文链接:https://www.haomeiwen.com/subject/ztuhrqtx.html