python——处理excel的常用库

Python 处理 Excel 文件主要依赖于几个流行的第三方库,这些库提供了丰富的功能来读取、写入以及操作 Excel 文件。以下是几种常见的处理方式:

  1. pandas:

    • 安装 : pip install pandas openpyxl(或pip install pandas xlrd xlwt,取决于Excel文件的版本和所需功能)

    • 读取 :

      python 复制代码
      import pandas as pd
      df = pd.read_excel('example.xlsx', sheet_name='Sheet1')

      这会将指定工作表的数据读入一个 pandas DataFrame 对象中。

    • 写入 :

      python 复制代码
      df.to_excel('output.xlsx', index=False)

      可以将 DataFrame 直接保存到一个新的 Excel 文件中。

  2. openpyxl:

    • 安装 : pip install openpyxl

    • 读取 :

      python 复制代码
      from openpyxl import load_workbook
      wb = load_workbook(filename='example.xlsx')
      ws = wb.active
      data = []
      for row in ws.iter_rows(values_only=True):
          data.append(row)
    • 写入/修改 :

      python 复制代码
      from openpyxl import Workbook
      wb = Workbook()
      ws = wb.active
      ws['A1'] = 'Hello'
      ws.append([1, 2, 3])
      wb.save('write_example.xlsx')
  3. xlrdxlwt(对于较旧版本的Excel文件更为常见):

    • 安装 : pip install xlrd xlwt

    • 读取 (使用xlrd):

      python 复制代码
      import xlrd
      workbook = xlrd.open_workbook('example.xls')
      sheet = workbook.sheet_by_index(0)
      data = [[sheet.cell_value(r, c) for c in range(sheet.ncols)] for r in range(sheet.nrows)]
    • 写入 (使用xlwt):

      python 复制代码
      from xlwt import Workbook
      wb = Workbook()
      ws = wb.add_sheet('Sheet1')
      ws.write(0, 0, 'Hello')
      wb.save('write_example.xls')

    注意:xlrd 在较新的版本中不再支持写入功能,且对.xlsx文件的支持有限,因此推荐使用 openpyxlpandas

  4. XlsxWriter:

    • 安装 : pip install XlsxWriter

    • 写入 (XlsxWriter 不支持读取,专为写入高性能的.xlsx文件设计):

      python 复制代码
      from xlsxwriter.workbook import Workbook
      workbook = Workbook('output.xlsx')
      worksheet = workbook.add_worksheet()
      worksheet.write('A1', 'Hello')
      workbook.close()
相关推荐
biter down3 小时前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python
肖永威4 小时前
Python多业务并行计算框架插件化演进:从硬编码到动态注册
python·插件化·并行计算·动态注册
yz_aiks4 小时前
Linux Jar包配置Systemd自启动实战:从排查到配置全流程
linux·python·jar·自启动·systemd
不知名的老吴5 小时前
线程的生命周期之线程“插队“
java·开发语言·python
xsc6996756 小时前
从零搭建大模型与智能体平台 - 完整技术详解
python
无风听海7 小时前
多租户系统中的 OIDC:Discovery 端点与联合登录的深度实践
后端·python·flask
CTA终结者7 小时前
期货量化主力换月程序怎么移仓:天勤 underlying_symbol 与任务切换
python·区块链
马士兵教育7 小时前
Java还有前景吗?Java+AI大模型学习路线及项目?
java·人工智能·python·学习·机器学习
KaMeidebaby8 小时前
卡梅德生物技术快报|纯化重组蛋白实操详解
人工智能·python·tcp/ip·算法·机器学习
Cloud_Shy6188 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 30 - 32)
开发语言·人工智能·笔记·python·学习方法