1. 产品
  2.   电子表格
  3.   Python
  4.   PyExcel  

PyExcel  

 
 

用于电子表格的开源 Python 库

通过 Python API 读取、创建、合并和过滤 CSV、ODS、XLS、XLSX 和 XLSM 电子表格文件中的数据。

PyExcel 是一个开源的单一 Python API,支持使用多种流行的电子表格格式。它使软件程序员能够以 CSV、ODS、XLS、XLSX 和 XLSM 文件格式读取、操作和写入数据。 API 非常关注数据而不是文件格式。该库通过提供通用编程接口帮助 Web 开发人员处理大多数 excel 文件格式。

从 MS Excel 文件中获取或导出数据非常容易。大多数情况下,它需要单行代码才能从 excel 文件中获取数据。只有一个 API 可以读取和写入各种 excel 文件格式的数据。 API 完全支持几个重要功能,例如读取和更新电子表格中的数据、将所有 Excel 文件合并到一个目录中、拆分工作簿、从工作簿中提取工作表、合并行和单元格、设置列样式、添加或删除列来自工作表、数据过滤等等。 API 提供了外部插件支持的文件格式列表。您可以使用 pip 添加或删除插件。

Previous Next

PyExcel 入门

首先,您需要在系统上安装 Python 2.6 或更高版本。推荐的安装方式是通过 pip。请使用以下命令。

通过 PIP 命令安装 PyExcel

 pip install pyexcel 

用于处理 Excel 电子表格的 Python API

PyExcel API 使软件开发人员能够访问、读取、写入和操作各种 Excel 格式的数据,例如 CSV、ODS、XLS、XLSX 和 XLSM。使用 PyExcel API 从 Excel 文件中导入或导出数据非常容易。它支持向现有文件添加新行、更新现有文件中的行、向现有文件添加或更新列、合并或拆分工作表、搜索数据、将 Excel 文件转换为其他格式等等。 

通过Python API添加新Row到现有的扩展表格文件

import pyexcel as pe
sheet = pe.get_sheet(file_name="example.xls")
sheet.row += [12, 11, 10]
sheet.save_as("new_example.xls")
pe.get_sheet(file_name="new_example.xls")

合并和拆分 Excel 工作表

PyExcel API 使开发人员能够将分散在目录中的文件合并到单个 Excel 工作簿中。每个文件都将成为工作簿中的一个工作表。它还提供与 XLS、CSV、XLSM 和 ODS 等其他 Excel 格式混合和匹配的功能。它还有助于您将工作簿拆分为多个文件。假设您有一本书包含多个工作表,通过使用开源 PyExcel 库,您可以将每个工作表分成一个工作表 Excel 文件。

通过PythonAPI合并或分离Excel文件

//merge two files into one file
from pyexcel.cookbook import merge_two_files
merge_two_files("example.csv", "example.xls", "output.xls")
//Split a workbook into single sheet files
from pyexcel.cookbook import split_a_book
split_a_book("megabook.xls", "output.xls")
import glob
outputfiles = glob.glob("*_output.xls")
for file in sorted(outputfiles):
print(file)

电子表格中的数据过滤

PyExcel API 为开发人员提供了根据自己的需要过滤数据的功能。假设您有大量数据,并且想要从中过滤掉一些数据。使用 API,您可以轻松做到这一点。它还支持从工作表中过滤空行或列。您还可以将过滤器数据保存到另一个文件中。

如何在Python应用程序中从Excel表格中滤出空白的Ross

import pyexcel as pe
sheet = pe.Sheet([[1,2,3],['','',''],['','',''],[1,2,3]])
//define filter
def filter_row(row_index, row):
    result = [element for element in row if element != '']
    return len(result)==0
// Apply filter
del sheet.row[filter_row]
 中国人