1. Produkty
  2.   Arkusz
  3.   Python
  4.   PyExcel  

PyExcel  

 
 

Biblioteka Open Source Python dla arkuszy kalkulacyjnych

Czytaj, twórz, łącz i filtruj dane w plikach arkuszy kalkulacyjnych CSV, ODS, XLS, XLSX i XLSM za pośrednictwem interfejsu API Pythona.

PyExcel to pojedynczy interfejs API typu open source w języku Python, który obsługuje pracę z kilkoma popularnymi formatami arkuszy kalkulacyjnych. Umożliwia programistom odczytywanie, manipulowanie i zapisywanie danych w formatach plików CSV, ODS, XLS, XLSX i XLSM. API w dużym stopniu skoncentrowało się na danych, a nie na formatach plików. Biblioteka pomaga programistom internetowym obsługiwać większość formatów plików Excela, zapewniając wspólny interfejs programistyczny.

Pobieranie lub eksportowanie danych z plików MS Excel jest bardzo łatwe. Przeważnie wymaga jednowierszowego kodu, aby uzyskać dane z plików Excela. Istnieje tylko jeden interfejs API do odczytu i zapisu danych w różnych formatach plików programu Excel. Kilka ważnych funkcji jest w pełni obsługiwanych przez interfejs API, takich jak odczytywanie i aktualizowanie danych w arkuszu kalkulacyjnym, scalanie wszystkich plików Excela w jednym katalogu, dzielenie skoroszytu, wyodrębnianie arkusza ze skoroszytu, scalanie wierszy i komórek, stylizowanie kolumn, dodawanie lub usuwanie kolumny z arkusza, filtrowanie danych i wiele innych. API zawiera listę formatów plików obsługiwanych przez wtyczki zewnętrzne. Możesz użyć pip, aby dodać lub usunąć wtyczkę.

Previous Next

Pierwsze kroki z PyExcel

Przede wszystkim musisz mieć zainstalowany w swoim systemie Python 2.6 lub nowszy. Zalecany sposób instalacji to pip. Użyj następującego polecenia.

Zainstaluj PyExcel za pomocą polecenia PIP

 pip install pyexcel 

Python API do pracy z arkuszem kalkulacyjnym Excel

PyExcel API umożliwia twórcom oprogramowania dostęp, odczytywanie, zapisywanie i manipulowanie danymi w różnych formatach Excela, takich jak CSV, ODS, XLS, XLSX i XLSM. Bardzo łatwo jest importować lub eksportować dane z plików Excel za pomocą PyExcel API. Obsługuje dodawanie nowego wiersza do istniejącego pliku, aktualizowanie wiersza w istniejącym pliku, dodawanie lub aktualizowanie kolumny do istniejącego pliku, scalanie lub dzielenie arkuszy, wyszukiwanie danych, konwertowanie plików Excela na inne formaty i wiele więcej. 

Dodaj nowy wiersz do istniejącego pliku arkusza kalkulacyjnego za pośrednictwem Python API

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")

Scal i podziel arkusz programu Excel

API PyExcel daje programistom możliwość łączenia plików rozproszonych w katalogu w jeden skoroszyt programu Excel. Każdy plik stanie się arkuszem w skoroszycie. Zapewnia również funkcje miksowania i dopasowywania z innymi formatami Excela, takimi jak XLS, CSV, XLSM i ODS. Ułatwia również podzielenie skoroszytu na kilka plików. Załóżmy, że masz książkę zawierającą kilka arkuszy roboczych, korzystając z biblioteki Open source PyExcel, możesz rozdzielić każdy z nich na pojedynczy arkusz Excela.

Połącz lub rozbijaj pliki Excel za pośrednictwem Pythona API

//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)

Filtrowanie danych w arkuszach kalkulacyjnych

API PyExcel zapewnia programistom funkcje filtrowania danych zgodnie z własnymi potrzebami. Załóżmy, że masz dużą ilość danych i chcesz odfiltrować z nich niektóre dane. Korzystając z API możesz to łatwo zrobić. Obsługuje również filtrowanie pustych wierszy lub kolumn z arkusza. Możesz także zapisać dane filtra w innym pliku.

Jak filtrować puste Ross z Excel Sheet wewnątrz aplikacji Python

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]
 Polski