Hur man läser excel (xlsx) -fil i python

How Read Excel File Python



De .xlsx är förlängningen av exceldokumentet som kan lagra en stor mängd data i tabellform, och många typer av aritmetisk och logisk beräkning kan enkelt göras i ett Excel -kalkylblad. Ibland krävs det att man läser data från exceldokumentet med Python -skript för programmeringsändamål. Många moduler finns i Python för att läsa excel -dokumentet. Några av de användbara modulerna är xlrd , openpyxl , och pandor . Sätten att använda dessa moduler för att läsa excel -filen i Python har visats i den här självstudien.

Nödvändig förutsättning:

En dummy excel -fil med .xlsx -tillägget kommer att krävas för att kontrollera exemplen på denna handledning. Du kan använda en befintlig excel -fil eller skapa en ny. Här heter en ny excel -fil försäljning.xlsx filen har skapats med följande data. Denna fil har använts för att läsa med hjälp av olika python -moduler i nästa del av den här självstudien.







försäljning.xlsx



Försäljningsdatum Säljare Belopp
05/12/18 Sila Ahmed 60000
12/06/19 Jag Hossain 50 000
08/09/20 Sarmin Jahan 45000
04/07/21 Mahmudul Hasan 30000

Exempel-1: Läs excel-fil med xlrd

Xlrd -modulen är inte installerad med Python som standard. Så du måste installera modulen innan du använder den. Den senaste versionen av den här modulen stöder inte excel -filen med filtillägget .xlsx. Så du måste installera 1.2.0 -versionen av denna modul för att kunna läsa xlsx -filen. Kör följande kommando från terminalen för att installera den nödvändiga versionen av xlrd .



$pipInstallera xlrd== 1.2.0

När installationen är klar skapar du en pythonfil med följande skript för att läsa försäljning.xlsx fil med den xlrd modul. open_workbook () funktionen används i skriptet öppna xlsx -filen för läsning. Denna excel -fil innehåller bara ett ark. Så, den workbook.sheet_by_index () funktion har använts i skriptet med argumentvärdet 0. Därefter det kapslade 'för' loop har använts för att läsa cellvärdena i kalkylbladet med hjälp av rad- och kolumnvärdena. Två intervallfunktioner () har använts i skriptet för att definiera rad- och kolumnstorleken baserat på bladdata. De cell_value () funktion har använts för att läsa det specifika cellvärdet för arket i varje iteration av slingan. Varje fält i utdata kommer att separeras av ett flikutrymme.





# Importera xlrd -modulen
importera xlrd

# Öppna arbetsboken
arbetsbok = xlrd.open_workbook('sales.xlsx')

# Öppna kalkylbladet
arbetsblad = arbetsbok.ark_by_index(0)

# Iterera raderna och kolumnerna
föriiräckvidd(0,5):
förjiräckvidd(0,3):
# Skriv ut cellvärdena med flikutrymme
skriva ut(arbetsblad.cell_värde(I j),slutet='t')
skriva ut('')

Produktion:

Följande utdata visas efter att ovanstående skript har körts.



Exempel 2: Läs excel-fil med openpyxl

De openpyxl är en annan python -modul för att läsa xlsx -filen, och den är inte heller installerad med Python som standard. Kör följande kommando från terminalen för att installera den här modulen innan du använder den.

$pipInstalleraopenpyxl

När installationen är klar skapar du en pythonfil med följande skript för att läsa försäljning.xlsx fil. Liksom xlrd -modulen, openpyxl modulen har load_workbook () funktion för att öppna xlsx -filen för läsning. De försäljning.xlsx filen används som argumentvärde för denna funktion. Syftet med wookbook.active har skapats i manuset för att läsa värdena för max_row och den max_kolumn egenskaper. Dessa egenskaper har använts i kapslade för slingor för att läsa innehållet i försäljning.xlsx fil. Funktionen intervall () har använts för att läsa av raderna i arket, och funktionen iter_cols () har använts för att läsa av kolumnerna i arket. Varje fält i utdata kommer att separeras av två flikutrymmen.

# Importera openyxl -modul
importera openpyxl

# Definiera variabel för att ladda wookbook
wookbook = openpyxl.load_workbook('sales.xlsx')

# Definiera variabel för att läsa det aktiva bladet:
kalkylblad = wookbook.active

# Iterera slingan för att läsa cellvärdena
föriiräckvidd(0, arbetsblad.max_row):
för med iarbetsblad.iter_cols(1, arbetsblad.max_kolumn):
skriva ut(med[i].värde,slutet=' t t')
skriva ut('')

Produktion:

Följande utdata visas efter att ovanstående skript har körts.

Exempel-3: Läs excel-fil med pandor

Pandas-modulen är inte installerad med pythonliknande föregående modul. Så om du inte har installerat det tidigare måste du installera det. Kör följande kommando för att installera pandor från terminalen.

$pipInstallerapandor

När installationen är klar skapar du en pythonfil med följande skript för att läsa försäljning.xlsx fil. De read_excel () pandas funktion används för att läsa xlsx -filen. Denna funktion har använts i skriptet för att läsa försäljning.xlsx fil. De DataFrame () funktionen har använts här för att läsa innehållet i xlsx -filen i dataramen och lagra värdena i variabeln som heter data . Datavärdet har skrivits ut senare.

# Importera pandor
importera pandorsompd

# Ladda xlsx -filen
excel_data = pd.read_excel('sales.xlsx')
# Läs värdena för filen i dataramen
data = pd.DataFrame(excel_data,kolumner=['Försäljningsdatum','Säljare','Belopp'])
# Skriv ut innehållet
skriva ut('Innehållet i filen är: n', data)

Produktion:

Följande utdata visas efter att ovanstående skript har körts. Utdata från detta skript skiljer sig från de två föregående exemplen. Radnumren skrivs ut i den första kolumnen, där radvärdet har räknats från 0. Datumvärdena justeras centralt. Säljarnas namn är rätt inriktade. Beloppet är justerat vänster.

Slutsats:

Pythonanvändarna måste arbeta med xlsx -filer för olika programmeringsändamål. Tre olika sätt att läsa xlsx -filen har visats i denna handledning med hjälp av tre python -moduler. Varje modul har olika funktioner och egenskaper för att läsa xlsx -filen. Denna handledning hjälper python -användare att enkelt läsa xlsx -filen med hjälp av python -skriptet efter att ha läst den här självstudien.