设为首页 收藏本站
查看: 1014|回复: 0

[经验分享] python操作Excel-11555901

[复制链接]

尚未签到

发表于 2018-8-9 06:25:09 | 显示全部楼层 |阅读模式
import xlrd  
import xlwt
  import xlutils
  import win32com
  #xlrd
  #打开excel
  data = xlrd.open_workbook("I+P.xls")
  #查看文件中包含sheet的名称
  sheetNames = data.sheet_names()
  #得到第一个工作表,或者通过索引顺序或工作表名称
  firstTable = data.sheets()[0]
  firstTable1 = data.sheet_by_index(0)
  # print firstTable
  # print firstTable1
  #获取行数和列数
  nrows = firstTable.nrows
  ncols = firstTable.ncols
  # print nrows,ncols
  #获取正行或整列的值(数组)
  test1 = firstTable.row_values(1)
  test2 = firstTable.col_values(1)
  # print test1,test2
  #单元格
  cell_A1 = firstTable.cell(0,0).value
  cell_C4 = firstTable.cell(2,3).value
  #
  # print cell_A1
  # print cell_C4
  #分别使用行列索引
  cell_A1 = firstTable.row(0)[0].value
  cell_A2 = firstTable.col(1)[0].value
  print cell_A1
  print cell_A2
  # #xlwt
  # #新建一个excel文件
  # file = xlwt.Workbook()
  # #新建一个sheet
  # table = file.add_sheet("yanshan",cell_overwrite_ok=True)
  # #cell_overwirte_ok参数控制单元格是否能够重写
  # #写入数据table.wirte(行,列,value)
  # table.write(0,1,"yanshan")
  # table.write(0,0,"test")
  # table.write(1,1,"jialing")
  # table.write(1,2,u"知青")
  #
  # #另外,可以使用style
  # style = xlwt.XFStyle()#初始化样式
  # font = xlwt.Font()#为样式创建字体
  # font.name = "Times New Roman"
  # font.bold = True
  # style.font = font#为样式设置字体
  # table.write(5,5,"some bold Times text",style)
  #
  # #保存文件
  # file.save("demo.xls")
  # #xlutils,具体操作实例
  # from xlrd import open_workbook
  # from xlutils.copy import copy
  #
  # rb = open_workbook(u"I+P.xls", formatting_info=True)
  # #参数formatting_info=True带格式拷贝
  # wb = copy(rb) #经过copy后得到的wb就是可写的Workbook对象了
  # #注:不支持图片拷贝,且支持的颜色种类较少
  # #对其进行写操作
  # ws = wb.get_sheet(2)
  # ws.write(2, 0, "changed!")
  #
  # wss = wb.add_sheet("1223", 1)
  # wss.write_merge(2, 2, 0, 5, "changed!")
  # # wss.wirte(2, 0, "123")
  #
  # wb.save("I+P.xls")
  #win32com
  # 调用com组件操作Excel,大部分函数调用类似VBA(可查看VBA帮助文档)
  # 操作步骤:
  # 连接COM库
  xlsApp = win32com.cllient.Dispatch("Excel.Application")
  xlsApp = win32com.client.DispatchEx("Excel.Application")
  #区别:DispatchEx新建一个Excel进程
  #创建表(或打开)
  book = xlsApp.Workbooks.Open(filename)
  #新建
  book = xlsApp.Workbooks.Add()
  #获取页签
  sheet = book.Wooksheets(n) #n为名字或索引
  #添加页签
  sheet = book.Wooksheets.Add(name)
  #页签句柄属性
  sheet.name
  #删除页签
  Worksheets(n).Delete()
  #单元格赋值
  sheet.Cells(r,c).Value
  #保存工作表
  book.Save()
  book.SaveAs(filename)
  #关闭工作表
  books.Close(SaveChange  =  False)
  #关闭COM组件
  xlsApp.Application.Quit()
  del xlsApp
  #删除行/列
  sheet.Rows(r).Delete
  sheet.Columns(r).Delete
  #设置所有行/列高
  sheet.Rows.RowsHeigh
  sheet.Columns.ColumnWidth
  #Excel拷贝对象:
  sheet1.copy(sheet2) #页签拷贝
  Range1.copy(Range2) #范围拷贝
  #多线程操作Excel使用的特殊函数(动态链接):
  pythoncom.CoInitialize() #开辟套件
  pythoncom.CoUnInitialize()  #回收套件

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-548791-1-1.html 上篇帖子: Python --013--面向对象 下篇帖子: python的format方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表