Jak czytać pliki Excel w Python
Praca z plikami Excel jest powszechnym wymogiem w zadaniach związanych z analizą danych i automatyzacją. Python, dzięki bogatemu zestawowi bibliotek, oferuje różne sposoby interakcji z plikami XLSX. W tym samouczku dowiemy się, jak odczytywać pliki Excel za pomocą biblioteki IronXL, która umożliwia obsługę Excela w języku Python.
IronXL: biblioteka Python dla programu Excel
IronXL for Python został zaprojektowany, aby pomóc programistom w łatwym odczytywaniu i zapisywaniu plików Excel w języku Python. Możesz nie tylko tworzyć pliki Excel, ale także pracować z wieloma arkuszami Excel jednocześnie. Ta biblioteka jest idealna do tworzenia plików Excel bez konieczności instalowania programu Microsoft Excel na komputerze.
Gdy potrzebujesz zaimportować dane bezpośrednio do arkusza kalkulacyjnego Excel, z pomocą przychodzi IronXL. IronXL ułatwia obsługę arkuszy kalkulacyjnych Excel. Ułatwia zarządzanie danymi w wielu arkuszach w pliku XLSX.
Zobaczmy, jak odczytywać pliki Excel w języku Python przy użyciu IronXL.
Jak odczytywać pliki Excel w języku Python
Poniższe kroki opisują proces odczytu plików Excel w języku Python.
- Utwórz plik Python w Visual Studio Code.
- Zainstaluj bibliotekę Python Excel za pomocą pip.
- Załaduj plik Excel, który musimy odczytać
- Przetwarzanie danych programu Excel za pomocą pętli
- Wyświetl dane iteracyjne na konsoli
Wymagania wstępne
Przed rozpoczęciem samouczka upewnij się, że w systemie zainstalowane są następujące wymagania wstępne:
- .NET 6.0 SDK: IronXL jest oparty na platformie .NET, co wymaga zainstalowania w systemie pakietu .NET 6.0 SDK.
- Python 3.0+: W samouczku zakładamy, że masz zainstalowany Python 3.0 lub nowszą wersję.
- pip: Upewnij się, że pip, instalator pakietów Pythona, jest zainstalowany, ponieważ będzie używany do instalacji IronXL.
Konfiguracja środowiska
1. Tworzenie pliku w Visual Studio Code
Otwórz Visual Studio Code i utwórz nowy plik w języku Python o nazwie ReadExcel.py. Ten plik będzie zawierał nasz skrypt do odczytu plików Excel przy użyciu IronXL.

2. Instalacja IronXL
Otwórz wiersz poleceń w Visual Studio Code, wybierając Terminal > New Terminal z menu.

Zainstaluj IronXL, uruchamiając następujące polecenie:
pip install ironxl
pip install ironxl

Pisanie kodu
Teraz podzielmy kod na sekcje i wyjaśnijmy każdą część.
Importowanie bibliotek
from ironxl import *
import sys
from ironxl import *
import sys
W tym miejscu importujemy wszystko z biblioteki IronXL, która zapewnia funkcjonalność do pracy z plikami Excel. sys służy do ustawienia ścieżki, w której zainstalowano Python, co jest niezbędne do prawidłowego działania IronXL.
Ustawianie ścieżki instalacyjnej Pythona
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
sys.prefix ma przypisaną ścieżkę do katalogu instalacyjnego Pythona. Ten etap przygotowawczy może nie być konieczny w każdym środowisku, ale w niektórych konfiguracjach jest niezbędny, aby zapobiec problemom związanym ze ścieżkami.
Ustawianie klucza licencyjnego
License.LicenseKey = "License-Key"
License.LicenseKey = "License-Key"
Biblioteka IronXL wymaga ważnego klucza licencyjnego, aby odblokować wszystkie jej funkcje. W tym wierszu kodu License.LicenseKey = "License-Key" należy wstawić uzyskany klucz licencyjny. Bez ważnej licencji IronXL nie będzie działać.
Ładowanie skoroszytu
workbook = WorkBook.Load("data.xlsx")
workbook = WorkBook.Load("data.xlsx")
Ta sekcja skryptu, workbook = WorkBook.Load("data.xlsx"), pokazuje, jak załadować skoroszyt programu Excel. WorkBook.Load to metoda udostępniana przez IronXL, służąca do otwierania istniejącego pliku Excel, określonego przez ścieżkę do pliku.
W przykładzie użyto pliku "data.xlsx", zakładając, że znajduje się on w tym samym katalogu co skrypt. Jeśli plik znajduje się w innym miejscu, należy podać pełną ścieżkę do pliku.
Wybór arkusza
worksheet = workbook.WorkSheets[0]
worksheet = workbook.WorkSheets[0]
Po załadowaniu skoroszytu następnym krokiem jest wybranie arkusza. Wiersz workbook.WorkSheets[0] zapewnia dostęp do pierwszego arkusza w pliku Excel. Arkusze są indeksowane, zaczynając od 0, więc ten fragment kodu skutecznie wybiera pierwszy arkusz.
Odczytywanie i wyświetlanie danych
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
Ta część skryptu pokazuje, jak odczytywać i wyświetlać dane z określonych komórek. Przechodząc iteracyjnie przez zakres komórek w arkuszu ["A2:A5"], uzyskujemy dostęp do adresu i wartości tekstowej każdej komórki. Możesz pobierać informacje z predefiniowanych obszarów w arkuszu.
Wykonywanie obliczeń
IronXL udostępnia funkcje umożliwiające wykonywanie prostych obliczeń bezpośrednio na zakresach danych w arkuszu Excel. Poniższe fragmenty kodu pokazują, jak wykonywać proste obliczenia, takie jak suma, minimum i maksimum, na danych w określonym zakresie.
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
Odkrywanie unikalnych wartości
Ta część skryptu pokazuje, jak zidentyfikować unikalne wartości w określonym zakresie arkusza Excel:
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
Aby to osiągnąć, wykorzystano zrozumieniuiuiuiuie zbiorów. Zbiory w języku Python to kolekcje, które automatycznie eliminują zduplikówane wpisy, dzięki czemu idealnie nadają się do wyszukiwania unikalnych wartości. Pętla przechodzi przez każdą komórkę w zakresie F2:F10, uzyskując dostęp do treści tekstowej każdej komórki za pomocą cell.Text.
Umieszczając tę iterację w zestawie, zapewniamy, że zachowane zostaną tylko unikalne wartości.
Zliczanie wystąpień określonej wartości
Wreszcie, ten fragment kodu zlicza, ile razy określona wartość występuje w danym przedziale.
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
Celem jest tutaj oszacowanie częstotliwości występowania określonej wartości, oznaczonej tutaj jako specific_value. Kod wykorzystuje wyrażenie generatora, które iteruje po każdej komórce w zakresie G2:G10, porównując zawartość tekstową komórki z wartością specific_value.
Wyrażenie cell.Text == specific_value zwraca wartość True dla każdej komórki zawierającej docelową wartość, a w pozostałych przypadkach wartość False. Funkcja sumy zsumowuje te wartości logiczne, traktując True jako 1, a False jako 0, co w efekcie pozwala policzyć, ile razy pojawia się określona wartość.
Pełny przykład kodu
Oto pełny kod, który pomoże lepiej zrozumieć treść:
from ironxl import *
import sys
# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
# Setting the license key for IronXL
License.LicenseKey = "License-Key"
# Load the workbook
workbook = WorkBook.Load("data.xlsx")
# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
# Count occurrences of a specific value in a different range
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
from ironxl import *
import sys
# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
# Setting the license key for IronXL
License.LicenseKey = "License-Key"
# Load the workbook
workbook = WorkBook.Load("data.xlsx")
# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
# Count occurrences of a specific value in a different range
specific_value = '5' # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
Wynik
Po uruchomieniu pliku ReadExcel.py w języku Python w konsoli wyświetli się następujący wynik, odzwierciedlający rezultaty operacji przeprowadzonych przez skrypt na danych z Excela.

Wnioski
W tym samouczku omówiliśmy, jak skonfigurować środowisko Python do korzystania z IronXL for Python w celu odczytu plików Excel. Omówiliśmy instalację niezbędnego oprogramowania, pisanie skryptu do ładowania skoroszytu Excel, wybieranie arkusza, odczytywanie danych, wykonywanie podstawowych operacji analizy danych i nie tylko.
IronXL zapewnia potężny interfejs API do pracy z plikami Excel w języku Python, umożliwiając analizę danych, czyszczenie danych i wizualizację bez konieczności korzystania z programu Microsoft Excel.
Niezależnie od tego, czy analizujesz dane sprzedażowe, importujesz dane do raportów, czy tworzysz wizualizacje na podstawie danych z Excela, IronXL oferuje solidne rozwiązanie do zarządzania plikami Excel w aplikacjach napisanych w języku Python.
IronXL oferuje bezpłatną wersję próbną, dzięki której użytkownicy mogą zapoznać się z jego funkcjami, a ceny licencji zaczynają się od $799 dla tych, którzy są gotowi w pełni zintegrować jego możliwości.
Często Zadawane Pytania
Jak odczytać pliki Excel w Pythonie bez programu Microsoft Excel?
IronXL pozwala na odczytywanie plików Excel w języku Python bez konieczności posiadania programu Microsoft Excel w systemie. Można ładować skoroszyty za pomocą WorkBook.Load("data.xlsx") i uzyskać bezpośredni dostęp do arkuszy oraz danych w komórkach.
Jakie ustawienia są wymagane, aby używać IronXL do odczytu plików Excel w Pythonie?
Aby korzystać z IronXL, upewnij się, że masz zainstalowane .NET 6.0 SDK, Python 3.0 lub nowszy oraz pip. Skonfiguruj swoje środowisko programistyczne w Visual Studio Code, aby rozpocząć pracę z plikami Excel.
Jak zainstalować IronXL w Pythonie?
Zainstaluj IronXL, uruchamiając polecenie pip install ironxl w terminalu. Spowoduje to zainstalowanie biblioteki IronXL, umożliwiającej odczyt i edycję plików Excel.
Czy mogę przeprowadzać operacje analizy danych na plikach Excel przy użyciu IronXL?
Tak, IronXL obsługuje różne operacje analizy danych, takie jak obliczanie sum, wyszukiwanie wartości minimalnych i maksymalnych oraz identyfikowanie unikalnych wartości w arkuszach Excel.
Jak znaleźć unikalne wartości w zakresie arkusza Excel przy użyciu IronXL?
Aby znaleźć unikalne wartości, użyj wyrażenia set comprehension do iteracji nad zakresem komórek i wyodrębnienia odrębnych wartości tekstowych. Ta metoda skutecznie identyfikuje wszystkie unikalne wpisy.
Czy za pomocą IronXL można zliczać określone wartości w Excelu?
Tak, można policzyć wystąpienia określonej wartości, iterując przez zakres komórek za pomocą wyrażenia generatora i sumując instancje, w których tekst komórki pasuje do wartości docelowej.
Jakie są zalety korzystania z IronXL do manipulacji plikami Excel w języku Python?
IronXL oferuje potężny interfejs API do manipulacji plikami Excel bez konieczności korzystania z programu Microsoft Excel. Jest idealny do zadań takich jak analiza danych, czyszczenie i wizualizacja, zwiększając produktywność w projektach Python.
Jak napisać skrypt w języku Python do odczytu plików Excel przy użyciu IronXL?
Utwórz skrypt w języku Python o nazwie ReadExcel.py, zaimportuj niezbędne biblioteki, ustaw ścieżkę Python i użyj metod IronXL do wczytania i interakcji z skoroszytami i danymi programu Excel.
Jakie operacje mogę wykonywać na danych programu Excel przy użyciu IronXL?
IronXL umożliwia wykonywanie różnych operacji, takich jak odczytywanie wartości komórek, wybieranie arkuszy, obliczanie sum, wyszukiwanie wartości minimalnych/maksymalnych oraz zliczanie określonych wystąpień w zakresach danych programu Excel.



