python自动操作excel,python+excel办公自动化教程

  python自动操作excel,python+excel办公自动化教程

  大蟒做超过自动化的方法:首先安装大蟒工具包;然后从指定文件路径读取超过表格,进行一定操作;接着保存到另一个超过文件;最终调用【excel _更新】方法即可。

  相关免费学习推荐:python视频教程

  python做excel自动化的方法:

  一、工具包

  1、xlrd:从超过电子表格中提取数据文件地址:https://xlrd。阅读文档。io/en/最新/

  2、xlwt:将数据写入超过电子表格文件地址:https://xlwt。阅读文档。org/en/latest/

  3、xlutils:提供一组处理超过文件的实用程序文件地址:https://xlutils。阅读文档。io/en/最新/

  二、安装

  python -m pip安装xlrd xlwt xlutils

  三、基本用法

  大蟒操作超过的相关工具包可以具体到操作指定单元格的填充样式、数值类型、数值大小等等。然而大蟒操作超过需要一定熊猫数据处理功底,后续将补上章节:熊猫数据处理技能

  1、从指定文件路径读取excel表格,进行一定操作,然后保存到另一个excel文件:result.xlsx

  导入xlwt

  导入读操作

  从xlutils.copy导入副本

  进口熊猫作为螺纹中径

  从熊猫进口数据框,系列

  导入操作系统

  os.chdir( ./)

  # 从指定文件路径读取超过表格

  df=PD。read _ excel( d :/我的论文/数据/资料。xlsx’)

  # 查看df内容

  # 根据年龄算出出生年份,增加一列

  导入日期时间

  导入操作系统

  year=datetime.datetime.now()。年份#获取当前系统时间对应的年份

  df[出生]=年份-df[年龄]

  df.to_excel(result.xlsx)#保存到当前工作目录,可以用os.getcwd()查看

  #查看下此时df的内容,可以看到已经生成了出生这一列乍看好像只用到了熊猫,还没有用到上面介绍的三个工具包,下面介绍利用大蟒操作超过底层

  2、单元格操作

  # 定义方法:读取指定目录下超过文件某个表单元格的值

  def excel_read(文件路径,表格,x,y):

  数据=xlrd。打开工作簿(文件路径)

  table=data.sheet_by_name(表)

  返回table.cell(y,x).价值

  # 定义方法:单元格值及样式

  write_obj_list=[]

  def concat_obj(列,行,值):

  写对象列表。追加({ cols : cols, rows:rows, value:value,\

  款式: xlwt。easyxf( font : name宋体,身高280;alignment: horiz centre)})

  # 定义方法:合并单元格

  def merge_unit(srows,erows,scols,ecols,value):

  写对象列表。append({ id : merge , srows :srows, erows:erows, scols :scols,\

  ecols:ecols,价值 :价值,风格 : xlwt。easyxf( font : name宋体,身高280;alignment: horiz centre)})

  # 定义方法:更新超过

  excel_update(文件路径,写入对象列表,新路径):

  old _ excel=xlrdopen _ workbook(file _ path,formatting_info=True)

  #管道作用

  new_excel=copy(old_excel)

  通过获取工作表()获取的表有写()方法

  sheet1=new_excel.get_sheet(0)

  数字一(一)代表是修改第几个工作表里,从0开始算是第一个。此处修改第一个工作表

  对于write_obj_list:中的项目

  如果" id "不在item.keys():中

  如果item.keys()中的“风格”为:

  sheet1.write(项目[行],项目[cols],项目[值],项目[style])

  else:

  sheet1.write(项目[行],项目[cols],项目[值])

  else:

  如果item.keys()中的“风格”为:

  sheet1.write_merge(项目[srows],项目[erows],项目[斯科尔斯],项目[ecols],项目[值],项目[style])

  else:

  sheet1.write_merge(项目[srows],项目[erows],项目[斯科尔斯],项目[ecols],项目[值])

  如果报错目录_项目没有属性排序

  把塞勒源码中list.sort()修改为-已排序(列表)

  一共修改注射毒品次

  new_excel.save(文件路径)

  #参数详解

  # srows:合并的起始行数

  # erows:合并的结束行数

  # scols:合并的起始列数

  # ecols:合并的结束列数

  #值:合并单元格后的填充值

  # style:合并后填充风格:

  # font:名称宋体

  #身高280;

  #对齐:水平中心

  # .与excel操作基本一致。注意:这个方法只保存需要直接进入一个列表的动作,真正的动作还没有执行。执行的操作发生在excel_update方法中。

  最后调用excel_update方法,传入每个单元格的运算和填充值的write_obj_list和文件保存路径file_path。

  您可以在当前工作目录中生成所需的Excel结果文件。

  注意:

  1.write_obj_list支持用户定义。

  2.write_obj_list也可以根据excel_read方法读取已有的要修改的excel文件生成(可以保持原表格的格式)

  还有很多其他操作python excel的基本方法,限于篇幅就不陈述和演示了。如果想深入学习,可以点击上面的doc地址。

  学习python操作excel单元格,掌握以上方法,基本可以实现excel的自动报表操作。这就是python如何实现excel自动化的细节。更多信息请关注热门IT软件开发工作室其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: