python利用xlrd库处理Excel

工作中经常需要处理Excel,所以自己稍微写了一个函数,方便以后自己使用.大家也可以借鉴下.

  • excel_file_name : 这里写Excel的路径,和python同一个目录下的话直接写文件名字即可
  • sheet_name : 写要处理的sheet的名字,默认Sheet1
  • start_row : 开始的行
  • end_row : 结束的行(默认所有行)
  • start_col : 开始的列
  • end_col : 结束的列(默认所有列)

返回一个列表,里面是根据首行Name形成的字典.应该能处理大多数excel.

复制代码
# -*- coding: utf-8 -*-
import xlrd


def read_excel(excel_file_name='hello.xlsx', sheet_name='Sheet1', start_row=0, end_row=0, start_col=0, end_col=0 ):
    try:
        data = xlrd.open_workbook(excel_file_name)
    except Exception as e:
        print(str(e))
    table = data.sheet_by_name(sheet_name)
    if end_row == 0:
        end_row = table.nrows
    column_names = table.row_values(start_row)
    if end_col == 0:
        end_col = len(column_names)
    excel_list = []
    for rownum in range(start_row+1, end_row):
        row = table.row_values(rownum)
        if row:
            app = {}
            for i in range(start_col, end_col):
                app[column_names[i]] = row[i]
            excel_list.append(app)
    return excel_list
相关推荐
小小张说故事3 分钟前
Python 的 __init__ 到底是不是构造函数?拆开 __new__ 先造对象、那次被跳过的初始化和必须返回 None 的规矩
python
拖累斯19 分钟前
Jenkins + Python 全自动跑通「禅道任务/BUG 导出 → 月度开发考核表」
python·jenkins·bug
特立独行的猫A1 小时前
13MB 单文件、一条命令变服务:把仓颉写的 cjh 内嵌进你的应用,当它的 AI 大脑
java·后端·python
deepseek231 小时前
Agent任务中途断线,怎么避免重复执行?SQLite检查点实测
python·sqlite·任务调度·幂等性·ai agent
2401_868534782 小时前
【网络安全
网络·python
❁满城风絮*13 小时前
Claude Code 学习总结
python·agent·claude
维克兜率天15 小时前
【维克】复合型CTA:趋势+套利的双轮驱动
python·学习方法
伞伞悦读15 小时前
【第76期】两张3行表左连接变5行:主键、validate与未匹配排查完整教程
人工智能·python
用户83562907805116 小时前
使用 Python 在 Excel 中添加和自定义迷你图
后端·python
用户83562907805116 小时前
使用 Python 在 Excel 图表中添加趋势线与回归方程
后端·python