zoukankan      html  css  js  c++  java
  • Python-利用xlrd模块操作excel

    在工作中,无论是数据分析,还是批量导入数据,都会去操作excel,当然,数据分析有数据分析的方法,而我在开发中涉及到的是批量导入excel中的数据,

    接下来介绍下如何利用python的xlrd模块来读取excel的数据。。。

    1.基本用法:

    xlrd是python语言中读取excel的扩展工具包,可以实现指定表单、指定单元格的读取(如果要写入数据,需要使用另一个扩展库:xlwt)。

    官方文档http://xlrd.readthedocs.io/en/latest/index.html

    # 示例:
    # 导入扩展包
    import xlrd
    # 打开Excel文件读取数据
    data = xlrd.open_workbook('excelFile.xls') [1] 
    data = xlrd.open_workbook(file_contents='excelFile.xls'.read())
    # 获取一个工作表 table = data.sheets()[0] #通过索引顺序获取 table = data.sheet_by_index(0) #通过索引顺序获取 table = data.sheet_by_name(u'Sheet1') #通过名称获取 # 获取整行和整列的值(数组) table.row_values(i) table.col_values(i) # 获取行数和列数 nrows = table.nrows ncols = table.ncols # 循环行列表数据 for i in range(nrows ): print table.row_values(i) # 单元格 table.cell(rowx,colx) cell_A1 = table.cell(0,0).value cell_C4 = table.cell(3,2).value # 使用行列索引 cell_A1 = table.row(0)[0].value cell_A2 = table.col(1)[0].value # 简单的写入 row = 0 col = 0 # 常用单元格中的类型 empty,1 string, 2 number, 3 date, 4 boolean, 5 error, 6 blank ctype = 1 value = '单元格的值' # 扩展的格式化 xf = 0 table.put_cell(row, col, ctype, value, xf) table.cell(0,0) #单元格的值'

    2.demo

    其中数字都会返回float类型,需要自己做些处理

    table = data.sheets()[0]
    for v in range(1, nrows):
    	row = table.row_values(v)
    	if row:
    	    app = {}
    	    for i in range(len(table.row_values(0))):
    	        app[table.row_values(0)[i]] = row[i]
    		    lists.append(app)
    return lists        


    #上面案例会以json形式返回

  • 相关阅读:
    singleton模式 在软件开发中的运用
    State Pattern
    闲话闲说——关于异常
    程序人生
    Event
    SerialPort实现modem的来电显示
    利用枚举进行状态的设计
    职责链模式的运用
    我对当前项目的一些看法
    SHAREPOINT 2007 网站模板(解决方案)安装和卸载
  • 原文地址:https://www.cnblogs.com/yuanfang0903/p/11422117.html
Copyright © 2011-2022 走看看