Excel (xlsx) fájl olvasása pythonban

How Read Excel File Python



Az .xlsx az Excel dokumentum kiterjesztése, amely nagy mennyiségű adatot tárolhat táblázatos formában, és sokféle számtani és logikai számítás könnyen elvégezhető egy Excel táblázatban. Néha programozási célokra a Python -szkript használatával ki kell olvasni az Excel dokumentum adatait. A Pythonban sok modul létezik az Excel dokumentum olvasására. Néhány hasznos modul xlrd , openpyxl , és pandák . Ebben a bemutatóban bemutatjuk, hogyan lehet ezeket a modulokat használni az Excel fájl Pythonban történő olvasásához.

Előfeltétel:

Az oktatóanyag példáinak ellenőrzéséhez egy .xlsx kiterjesztésű dummy Excel fájlra lesz szükség. Használhat bármely meglévő Excel fájlt, vagy létrehozhat újat. Itt egy új excel fájl neve eladások.xlsx fájl a következő adatokkal lett létrehozva. Ez a fájl az oktatóanyag következő részében különböző python modulok használatával olvasásra szolgál.







eladások.xlsx



Értékesítési dátum Eladó Összeg
05/12/18 Sila Ahmed 60000
12. 06. 19 Én Hossain 50.000
08/09/20 Sarmin Jahan 45000
04/07/21 Mahmudul Hasan 30000

1. példa: Olvassa el az Excel fájlt az xlrd használatával

Az xlrd modul alapértelmezés szerint nincs telepítve a Python rendszerrel. Tehát a modult használat előtt telepítenie kell. A modul legújabb verziója nem támogatja az .xlsx kiterjesztésű Excel fájlt. Tehát telepítenie kell a modul 1.2.0 verzióját az xlsx fájl olvasásához. Futtassa a következő parancsot a terminálról a szükséges verzió telepítéséhez xlrd .



$csipogtelepítés xlrd== 1.2.0

A telepítési folyamat befejezése után hozzon létre egy python fájlt a következő parancsfájllal a fájl elolvasásához eladások.xlsx fájl használatával az xlrd modul. open_workbook () függvényt használja a szkriptben, nyissa meg az xlsx fájlt olvasáshoz. Ez az Excel fájl csak egy lapot tartalmaz. Így a workbook.sheet_by_index () függvényt használták a szkriptben a 0. argumentum értékkel. Ezután a beágyazott 'For' A loop a munkalap cellaértékeinek olvasására szolgál a sor- és oszlopértékek használatával. A parancsfájlban két tartomány () függvényt használtak a sorok és oszlopok méretének meghatározására a lap adatai alapján. Az cell_value () függvény a lap adott cellaértékét olvasta be a ciklus minden iterációjában. A kimenet minden mezőjét egy tabulátor szóköz választja el.





# Importálja az xlrd modult
import xlrd

# Nyissa meg a munkafüzetet
munkafüzet = xlrd.open_workbook('sales.xlsx')

# Nyissa meg a munkalapot
munkalap = munkafüzet.sheet_by_index(0)

# Ismételje meg a sorokat és az oszlopokat
számáraénban benhatótávolság(0,5):
számárajban benhatótávolság(0,3):
# Nyomtassa ki a cellaértékeket a tabulátorral
nyomtatás(munkalap.cell_érték(én, j),vége=' t')
nyomtatás('')

Kimenet:

A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után.



2. példa: Olvassa el az Excel fájlt az openpyxl használatával

Az openpyxl egy másik python modul az xlsx fájl olvasására, és alapértelmezés szerint nincs telepítve a Python rendszerrel. A modul telepítése előtt futtassa a következő parancsot a terminálról a modul telepítéséhez.

$csipogtelepítésopenpyxl

A telepítési folyamat befejezése után hozzon létre egy python fájlt a következő parancsfájllal a fájl elolvasásához eladások.xlsx fájlt. Mint az xlrd modul, az openpyxl modul rendelkezik a load_workbook () funkció megnyitja az xlsx fájlt olvasásra. Az eladások.xlsx fájlt használja ennek a függvénynek az argumentumértékeként. A tárgy a wookbook.aktív jött létre a szkriptben a max_row és a max_oszlop tulajdonságait. Ezeket a tulajdonságokat a beágyazott ciklusokhoz használták a eladások.xlsx fájlt. A tartomány () függvényt használtuk a lap sorainak olvasására, az iter_cols () függvényt pedig a lap oszlopainak olvasására. A kimenet minden mezőjét két tabulátor szóköz választja el egymástól.

# Openyxl modul importálása
importálja az openpyxl -t

# Határozza meg a változót a wookbook betöltéséhez
wookbook = openpyxl.load_workbook('sales.xlsx')

# Változó meghatározása az aktív munkalap olvasásához:
munkalap = wookbook.aktív

# Ismételje meg a ciklust a cellaértékek leolvasásához
számáraénban benhatótávolság(0, munkalap.max_row):
számára a ... val ban benmunkalap.iter_cols(1, munkalap.max_oszlop):
nyomtatás(a ... val[én].érték,vége=' t t')
nyomtatás('')

Kimenet:

A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után.

3. példa: Olvassa el az Excel fájlt pandák használatával

A pandas modul nincs telepítve az előző modulhoz hasonlóan. Tehát, ha korábban nem telepítette, akkor telepítenie kell. Futtassa a következő parancsot a pandák a terminálról.

$csipogtelepítéspandák

A telepítési folyamat befejezése után hozzon létre egy python fájlt a következő parancsfájllal a fájl olvasásához eladások.xlsx fájlt. Az read_excel () A pandák funkciója az xlsx fájl olvasására szolgál. Ezt a funkciót használta a szkriptben a eladások.xlsx fájlt. Az DataFrame () függvény itt az xlsx fájl tartalmát olvassa be az adatkeretben, és tárolja az értékeket a nevű változóban adat . Az adatok értékét később kinyomtattuk.

# Panda importálása
import pandákmintpd

# Töltse be az xlsx fájlt
excel_data = pd.read_excel('sales.xlsx')
# Olvassa el a fájl értékeit az adatkeretben
adatok = pd.DataFrame(excel_data,oszlopok=['Értékesítési dátum','Eladó','Összeg'])
# Nyomtassa ki a tartalmat
nyomtatás('A fájl tartalma: n', adatok)

Kimenet:

A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után. Ennek a szkriptnek a kimenete eltér az előző két példától. A sorszámok az első oszlopba kerülnek nyomtatásra, ahol a sor értéke 0 -tól számolható. A dátumértékek középen vannak igazítva. Az értékesítők nevei jobbra vannak igazítva. Az összeg balra igazodik.

Következtetés:

A python felhasználóknak xlsx fájlokkal kell dolgozniuk különböző programozási célokra. Ebben az oktatóanyagban három különböző módon olvasható az xlsx fájl három python modul használatával. Minden modul különböző funkciókkal és tulajdonságokkal rendelkezik az xlsx fájl olvasásához. Ez az oktatóanyag segít a python felhasználóinak az xlsx fájl egyszerű olvasásában a python parancsfájl használatával, miután elolvasta ezt az oktatóanyagot.