Kā lasīt Excel (xlsx) failu python

How Read Excel File Python



The .xlsx ir Excel dokumenta paplašinājums, kas var uzglabāt lielu datu apjomu tabulas veidā, un daudzu veidu aritmētiskos un loģiskos aprēķinus var viegli veikt Excel izklājlapā. Dažreiz programmēšanas nolūkos ir jāizlasa Excel dokumenta dati, izmantojot Python skriptu. Python ir daudz moduļu, lai lasītu Excel dokumentu. Daži noderīgi moduļi ir xlrd , openpyxl , un pandas . Šajā apmācībā ir parādīti veidi, kā izmantot šos moduļus, lai lasītu Excel failu programmā Python.

Priekšnosacījums:

Lai pārbaudītu šīs apmācības piemērus, būs nepieciešams fiktīvs Excel fails ar paplašinājumu .xlsx. Varat izmantot jebkuru esošo Excel failu vai izveidot jaunu. Šeit ir jauns Excel fails ar nosaukumu pārdošana.xlsx fails ir izveidots ar šādiem datiem. Šis fails tika izmantots lasīšanai, izmantojot dažādus python moduļus šīs apmācības nākamajā daļā.







pārdošana.xlsx



Pārdošanas datums Pārdevējs Summa
12.05.18 Sila Ahmeds 60000
06.06.19 Es Hossains 50 000
08/09/20 Sarmin Jahan 45000
04/07/21 Mahmuduls Hasans 30000

1. piemērs: lasiet Excel failu, izmantojot xlrd

Pēc noklusējuma xlrd modulis nav instalēts kopā ar Python. Tātad, pirms moduļa lietošanas tas ir jāinstalē. Šī moduļa jaunākā versija neatbalsta Excel failu ar paplašinājumu .xlsx. Tātad, lai lasītu xlsx failu, jums jāinstalē šī moduļa 1.2.0 versija. Palaidiet šādu komandu no termināļa, lai instalētu nepieciešamo versiju xlrd .



$pipuzstādīt xlrd== 1.2.0

Pēc instalēšanas procesa pabeigšanas izveidojiet python failu ar šādu skriptu, lai izlasītu pārdošana.xlsx failu, izmantojot xlrd modulis. open_workbook () funkcija tiek izmantota skriptā, atveriet xlsx failu lasīšanai. Šajā Excel failā ir tikai viena lapa. Tātad, workbook.sheet_by_index () funkcija ir izmantota skriptā ar argumenta vērtību 0. Tālāk ligzdotais 'priekš' cilpa izmantoja darblapas šūnu vērtību lasīšanai, izmantojot rindu un kolonnu vērtības. Skriptā ir izmantotas divas diapazona () funkcijas, lai, pamatojoties uz lapas datiem, noteiktu rindu un kolonnu lielumu. The šūnu_vērtība () funkcija ir izmantojusi, lai nolasītu lapas konkrēto šūnu vērtību katrā cilpas iterācijā. Katrs izvades lauks tiks atdalīts ar vienu cilnes atstarpi.





# Importējiet xlrd moduli
importēt xlrd

# Atveriet darbgrāmatu
darbgrāmata = xlrd.open_workbook('sales.xlsx')

# Atveriet darblapu
darblapa = darbgrāmata.sheet_by_index(0)

# Atkārtojiet rindas un kolonnas
priekšiiekšādiapazons(0,5):
priekšjiekšādiapazons(0,3):
# Drukājiet šūnu vērtības ar tabulēšanas atstarpi
drukāt(darblapa.šūnu_vērtība(es, j),beigas=' t')
drukāt('')

Izeja:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade.



2. piemērs: lasiet Excel failu, izmantojot openpyxl

The openpyxl ir vēl viens python modulis xlsx faila lasīšanai, un tas arī nav instalēts kopā ar Python pēc noklusējuma. Lai instalētu šo moduli, pirms tā izmantošanas izpildiet šo termināļa komandu.

$pipuzstādītopenpyxl

Pēc instalēšanas procesa pabeigšanas izveidojiet python failu ar šādu skriptu, lai izlasītu pārdošana.xlsx failu. Tāpat kā xlrd modulis, openpyxl modulim ir ielādes_grāmata () funkcija, lai atvērtu xlsx failu lasīšanai. The pārdošana.xlsx fails tiek izmantots kā šīs funkcijas argumenta vērtība. Priekšmets wookbook.aktīvs ir izveidots skriptā, lai izlasītu max_row un max_kolonna īpašības. Šīs īpašības ir izmantotas ligzdotajās cilpās, lai lasītu pārdošana.xlsx failu. Lapas rindu lasīšanai tika izmantota funkcija range (), bet lapas kolonnas - iter_cols (). Katrs izvades lauks tiks atdalīts ar divām cilnēm.

# Importējiet openyxl moduli
importēt openpyxl

# Definējiet mainīgo, lai ielādētu wookbook
wookbook = openpyxl.load_workbook('sales.xlsx')

# Definējiet mainīgo, lai lasītu aktīvo lapu:
darblapa = wookbook.active

# Atkārtojiet cilpu, lai nolasītu šūnu vērtības
priekšiiekšādiapazons(0, darblapa.max_row):
priekš Ar iekšādarblapa.iter_cols(1, darblapa.max_kolonna):
drukāt(Ar[i].vērtība,beigas=' t t')
drukāt('')

Izeja:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade.

3. piemērs: lasiet Excel failu, izmantojot pandas

Pandas modulis nav instalēts ar python līdzīgu iepriekšējo moduli. Tātad, ja jūs to iepriekš neinstalējāt, tas ir jāinstalē. Palaidiet šādu komandu, lai instalētu pandas no termināļa.

$pipuzstādītpandas

Pēc instalēšanas procesa pabeigšanas izveidojiet python failu ar šādu skriptu, lai izlasītu pārdošana.xlsx failu. The read_excel () funkcija pandas tiek izmantota xlsx faila lasīšanai. Šī funkcija ir izmantota skriptā, lai lasītu pārdošana.xlsx failu. The DataFrame () funkcija šeit ir izmantota, lai lasītu xlsx faila saturu datu rāmī un saglabātu vērtības mainīgajā nosaukumā dati . Datu vērtība ir izdrukāta vēlāk.

# Importēt pandas
importēt pandaspd

# Ielādējiet xlsx failu
excel_data = pd.read_excel('sales.xlsx')
# Izlasiet datu rāmja faila vērtības
dati = pd.DataFrame(excel_data,kolonnas=['Pārdošanas datums','Pārdevējs','Summa'])
# Izdrukājiet saturu
drukāt('Faila saturs ir šāds: n', dati)

Izeja:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šī skripta iznākums atšķiras no diviem iepriekšējiem piemēriem. Rindu numuri tiek drukāti pirmajā kolonnā, kur rindas vērtība ir skaitīta no 0. Datuma vērtības tiek izlīdzinātas centrā. Pārdevēju vārdi ir sakārtoti pa labi. Summa ir izlīdzināta pa kreisi.

Secinājums:

Python lietotājiem ir jāstrādā ar xlsx failiem dažādiem programmēšanas mērķiem. Šajā apmācībā ir parādīti trīs dažādi xlsx faila lasīšanas veidi, izmantojot trīs python moduļus. Katram modulim ir dažādas funkcijas un rekvizīti xlsx faila lasīšanai. Šī apmācība palīdzēs python lietotājiem pēc šīs apmācības izlasīšanas viegli izlasīt xlsx failu, izmantojot python skriptu.