zoukankan      html  css  js  c++  java
  • python excel

    1、获取excel中所有sheet的名称

    1 import xlrd
    2 from xlutils.copy import copy
    3 
    4 def getSheetNames(filename):
    5     #打开excel
    6     workbook =  xlrd.open_workbook(filename)
    7     nameList = workbook.sheet_names()
    8     return (nameList)

    2、获取excel某一个sheet的总行数

    1 def getrows(filename, sheetname):
    2     #打开excel
    3     workbook =  xlrd.open_workbook(filename)
    4     #根据名字获取指定sheet页
    5     sheet=workbook.sheet_by_name(sheetname)
    6     #获取sheet页的行数和列数
    7     rows = sheet.nrows
    8     #print(sheet.ncols)#列数
    9     return (rows)

    3、向已存在的excel写入(或修改)

    '''********************************************************
        Func Name:    writeResToExcel
        Para:         filename  :  excel路径
                      sheetname :  sheet名称
                      row       :  行
                      col       :  列
                      value     :  值
        Desc:         向已存在的excel写入(或修改)某行某列的值
        Date:         20190711
        Auth:         yanerfree
    ********************************************************'''
    def writeResToExcel(filename, sheetname, row, col, value):
        #xlutils:修改excel
        #打开excel
        workbook1 =  xlrd.open_workbook(filename)
        workbook2 = copy(workbook1)#拷贝一份原来的excel
        # print(dir(workbook2))
        #根据名字获取指定sheet页
        sheet=workbook2.get_sheet(sheetname)
        sheet.write(row, col, value)
        workbook2.save(filename)
        #sheet = book2.get_sheet(0)#获取第几个sheet页,book2现在的是xlutils里的方法,不是xlrd的
        print("*****   结果写入excel成功   *****")

    xlrd 与 copy的excel操作有点区别:

    1)获取sheet方法:

    xlrd打开的文件:

    sheet= workbook1.sheets()[0] #通过索引顺序获取
    sheet= workbook1.sheet_by_index(0) #通过索引顺序获取
    sheet= workbook1.sheet_by_name(u'Sheet1')#通过名称获取

    copy后的文件:

    workbook2 = copy(workbook1)#拷贝一份原来的excel

    sheet=workbook2.get_sheet('Sheet1')#根据名字获取指定sheet页
    sheet=workbook2.get_sheet(0)#通过索引顺序获取

    2)获取sheet的行数

    xlrd打开的文件:

    rows = sheet.nrows

    cols = sheet.ncols

    copy后的文件不能这样获取

    注意:xlrd模块0.8版本后不支持以xlsx为后缀名文件,所以使用这个方法的时候,excel要用xls格式的,不然会导致保存的文件无法打开

  • 相关阅读:
    Sql server 2012 企业中文版安装图文教程
    sql server安装图解
    Unknown custom element: <swiper>
    CSS3实现鼠标移动到图片上图片变大(缓慢变大,有过渡效果,放大的过程是有动画过渡的,这个过渡的时间可以自定义)
    在vue中使用animate.css
    linux配置jdk
    orcal解决锁表
    java 基础知识
    fastjson解析list ,object中含有list, object中含有map
    vue的周期函数
  • 原文地址:https://www.cnblogs.com/yaner2018/p/11269873.html
Copyright © 2011-2022 走看看