Práce s daty Excel v Pythonu často vyžaduje extrakci specifických řádků a sloupců do formátu seznamu. Převod rozsahu Excel na seznam Pythonu je extrémně užitečný pro úkoly jako:
- Analýza dat s Pandas a NumPy
- Automatizace reportingu a ETL procesů
- Integrace s modely strojového učení nebo API
V tomto článku se naučíme, jak převést definovaný rozsah Excelu na seznam v Pythonu krok za krokem.
Python Excel to List Converter Library
Namísto ručního zpracovávání Excel souborů mohou vývojáři použít Aspose.Cells for Python prostřednictvím .NET, mocnou knihovnu pro převod Excel na seznam. Nejenže usnadňuje extrakci rozsahů, řádků a sloupců do Python seznamů, ale také podporuje pokročilé funkce, jako jsou vzorce, formátování, grafy a kontingenční tabulky, což zajišťuje přesnost i u složitých tabulek.
Před kódováním se ujistěte, že máte nastavení připraveno:
- Nainstalujte Python 3.7+.
- Stáhněte si Aspose.Cells z vydání nebo jej nainstalujte pomocí pip:
pip install aspose-cells-python
- Připravte ukázkový Excel soubor (
sampledata.xlsx
) s následujícím obsahem:

Ukázkový datový soubor Excel.
Převod Excel rozsahu na Python seznam: Podrobný průvodce
Pojďme projít procesem převodu rozsahu dat v Excelu na seznam Pythonu pomocí Aspose.Cells for Python.
Postupujte podle následujících kroků pro převod rozsahu Excelu na seznam v Pythonu:
- Nejprve načtěte stávající Excel soubor pomocí třídy
Workbook
. - Druhé, načtěte první pracovní list.
- Další, vytvořte rozsah, např. A1 až C4.
- Po tom, převést rozsah na seznam Pythonu.
- Konečně vytiskněte seznam.
Následující Python skript načítá Excel soubor, definuje rozsah a převádí ho na seznam v Pythonu.
from aspose.cells import Workbook
# Krok 1: Načtěte sešit aplikace Excel
book = cells.Workbook("sample_data.xlsx")
# Krok 2: Získejte přístup k prvnímu listu
sheet1 = book.worksheets.get(0)
# Krok 3: Definujte rozsah (A1:C4 v tomto příkladu)
sheet_cells = sheet1.cells
range_obj = sheet_cells.create_range("A1", "C4")
# Krok 4: Převeďte rozsah na vnořený seznam Pythonu
range_list = []
for row_index in range(range_obj.first_row, range_obj.first_row + range_obj.row_count):
row = []
for column_index in range(range_obj.first_column, range_obj.first_column + range_obj.column_count):
curr_cell = sheet_cells.check_cell(row_index, column_index)
row.append(curr_cell.value if curr_cell else "")
range_list.append(row)
# Krok 5: Vytiskněte seznam Python
print("Python List Output:")
print(range_list)
Output
Python List Output:
[['City', 'Region', 'Store'], ['Chicago', 'Central', 3055], ['New York', 'East', 3036], ['Detroit', 'Central', 3074]]
Tento kompletní skript ukazuje, jak extrahovat data z Excelu a převést je do seznamu Pythonu. Poté je lze snadno transformovat na Pandas nebo JSON v závislosti na vašich požadavcích.
Convert Python List to Pandas DataFrame
S Pandas můžete přímo transformovat seznam na DataFrame:
import pandas as pd
# Convert to a Pandas DataFrame
df = pd.DataFrame(range_list[1:], columns=range_list[0])
print(df)
Pandas DataFrame Výstup:
City Region Store
0 Chicago Central 3055
1 New York East 3036
2 Detroit Central 3074
Uložte Python seznam jako JSON
Můžete také exportovat data jako JSON:
import json
# Convert to JSON
json_output = json.dumps(range_list)
print(json_output)
JSON Output:
[["City", "Region", "Store"], ["Chicago", "Central", 3055], ["New York", "East", 3036], ["Detroit", "Central", 3074]]
Převod řádku Excelu na seznam v Pythonu
Někdy možná budete chtít extrahovat pouze jeden řádek z Excelu a uložit ho jako seznam. Zde je, jak to udělat s Aspose.Cells:
- Načtěte pracovní sešit Excel.
- Přístup k pracovnímu listu.
- Vyberte řádek podle indexu.
- Shromáždit hodnoty řádků do seznamu Python.
# Importujte knihovnu Aspose.Cells
from aspose.cells import Workbook
# Krok 1: Načtěte Excelovou pracovní knihu z souboru
book = Workbook("sample_data.xlsx")
# Krok 2: Získejte první list v sešitu
sheet = book.worksheets.get(0)
# Krok 3: Definujte index řádku (0 = první řádek, který obsahuje záhlaví)
row_index = 0
cells = sheet.cells
# Vytvořte objekt rozsahu pro vybraný řádek
row_range = cells.create_range(row_index, 0, 1, sheet.cells.max_column + 1)
# Krok 4: Převeďte řádek na seznam Pythonu
row_list = []
for column_index in range(row_range.first_column, row_range.first_column + row_range.column_count):
curr_cell = cells.check_cell(row_index, column_index) # Get each cell in the row
row_list.append(curr_cell.value if curr_cell else "") # Append value or empty string if cell is blank
# Vytiskněte extrahovaný řádek jako seznam.
print("Row to List:", row_list)
Output:
Row to List: ['City', 'Region', 'Store']
Převod sloupce Excelu na seznam v Pythonu
Můžete také extrahovat jeden sloupec do seznamu. Například, pojďme převést sloupec Region do seznamu:
- Načtěte pracovní sešit a pracovní list.
- Vyberte sloupec podle indexu.
- Procházejte každým řádkem ve sloupci.
- Sběr hodnot sloupce do seznamu.
# Importujte knihovnu Aspose.Cells
from aspose.cells import Workbook
# Krok 1: Načíst sešit Excel z souboru
book = Workbook("sample_data.xlsx")
# Přístup k prvnímu listu v sešitu
sheet = book.worksheets.get(0)
# Krok 2: Definujte index sloupce (0 = první sloupec, tj. Sloupec A)
col_index = 0
cells = sheet.cells
# Vytvořte objekt rozsahu pro vybraný sloupec
# Parametry: (počáteční_řádek, počáteční_sloupec, celkové_řádky, celkové_sloupce)
# Zde začněte na řádku 0, vyberte colindex, zahrňte všechny řádky a šířka = 1 sloupec
col_range = cells.create_range(0, col_index, sheet.cells.max_row + 1, 1)
# Krok 3 a 4: Převést sloupec na seznam Pythonu
col_list = []
for row_index in range(col_range.first_row, col_range.first_row + col_range.row_count):
curr_cell = cells.check_cell(row_index, col_index) # Get each cell in the column
if curr_cell: # Only add if the cell exists (ignore empty rows)
col_list.append(curr_cell.value)
# Vytiskněte extrahovaný sloupec jako seznam.
print("Column to List:", col_list)
Output:
Column to List: ['City', 'Chicago', 'New York', 'Detroit']
Získejte zdarma licenci
Vyhodnoťte Aspose.Cells for Python prostřednictvím .NET bez omezení. Požádejte o bezplatnou dočasnou licenci na license page.Aplikujte ji ve svém kódu, abyste odstranili omezení hodnocení. Otestujte každou funkci, včetně DF do Excelu, grafů, vzorců a velkých souborů.
Excel na seznam: Bezplatné zdroje
Využijte následující zdroje k prohloubení svých znalostí, posílení svého porozumění a získání praktických poznatků, které vám mohou pomoci efektivněji aplikovat to, co se naučíte.
- Aspose.Cells Oficiální dokumentace
- API Reference
- Bezplatné online nástroje Excel
- Návody a příručky pro vývojáře
Závěr
Ukázali jsme, jak převést data z Excelu na seznamy v Pythonu extrakcí rozsahů, řádků a sloupců pomocí Aspose.Cells for Python prostřednictvím .NET. Jakmile jsou data ve formátu seznamu, mohou být použita pro Pandas, JSON nebo jiné zpracovatelské úkoly. Zatímco knihovny jako openpyxl nebo pandas.readexcel mohou extrahovat rozsahy, Aspose.Cells poskytuje větší kontrolu nad vzorci, formátováním, grafy a sloučenými buňkami, což z něj činí lepší volbu pro složité operace v Excelu.
Pokud potřebujete pomoc nebo máte nějaké otázky, neváhejte se obrátit na naše Aspose.Cells Free Support Forum.Náš tým vám rád pomůže.