XLSX v CSV v Pythonu

Xlsx V Csv V Pythonu



V zadnjih letih je Python postal eden izmed prevladujočih programskih jezikov. Skupnost Python se je znatno razširila zaradi priljubljenosti in uporabnosti Pythona. V tem članku bomo podrobno opisali, kako uporabiti Python za pretvorbo XLSX v CSV. Zavedamo se, da se excel datoteke pogosto uporabljajo za izvajanje finančnih analiz, organiziranje podatkov, vnos podatkov, računovodstvo, upravljanje s podatki, ustvarjanje grafikonov in grafov itd. Vendar pa za uvoz in izvoz podatkov večinoma raje uporabljamo datoteke CSV. Eden od pristopov je prenos strukturiranih podatkov z uporabo navadne besedilne datoteke.

Kaj je datoteka Xslx?

Pri izdelavi preglednic v najnovejših različicah Excela Microsoft kot privzeto vrsto datoteke uporablja datoteko XLSX. Podobno kot Wordova vrsta datoteke DOCX lahko datoteke XLSX odpremo z različnimi aplikacijami/programi.

Kaj je datoteka CSV?

Format datoteke CSV je tisto, kar lahko uporabimo za shranjevanje vrednosti tabelarnih podatkov v preglednice in baze podatkov. Tabelarni podatki, besedilo ali besedilo, so shranjeni kot golo besedilo v datoteki CSV. Zapis v datoteki CSV je vrednost podatkov, shranjena v vsaki vrstici datoteke. Vsak zapis ima lahko več kot eno polje, ki je ločeno z vejicami.







Ključne razlike med datotekama XLSX in CSV

Uporabniki pogosto uporabljajo CSV in XLSX izmenično in se na splošno ne zavedajo razlik med njima, kakšne so njune temeljne značilnosti in kako delujejo. Služi le kot vir informacij za uporabnika. Skoraj vsako podjetje in podjetje uporablja oboje za pomoč uporabnikom pri upravljanju, posodabljanju in shranjevanju podatkov za uporabnika. Sledi nekaj ključnih razlik med datotekami XLSX in CSV, ki jih morate poznati:



  • Format CSV shrani tabelarične podatke v besedilno datoteko z ločilom s pripono .csv. Medtem ko je datoteka excel ali XLSX preglednica, ki shranjuje datoteke v svoji lastniški obliki, tj. xls ali XLSX.
  • Excelove datoteke so binarne datoteke, ki vsebujejo podatke na vsakem delovnem listu v delovnem zvezku. Medtem ko je CSV navaden in preprost besedilni format z zaporedjem podatkovnih vrednosti, ločenih z vejicami.
  • Podatkovnih operacij ni mogoče izvajati na datotekah CSV. Vendar jih je mogoče izvesti v datotekah Excel.
  • Datoteke CSV so hitrejše in porabijo manj pomnilnika kot datoteke XLSX. Vendar Excel pri uvažanju podatkov porabi več pomnilnika.
  • Če primerjamo CSV z Excelom, lahko datoteke CSV odpremo v katerem koli urejevalniku besedil Windows, medtem ko datoteke Excel ne morejo.

Kako je mogoče datoteko XLSX pretvoriti v CSV z uporabo Pythona?

Datoteko XLSX je mogoče pretvoriti v datoteko CSV v Pythonu z uporabo različnih metod. Python vključuje vrsto modulov in funkcij, ki nam lahko pomagajo pri izpolnjevanju te naloge. Tukaj bomo preučili nekaj metod, ki jih je mogoče uporabiti za pretvorbo datotek XLSX v datoteke CSV v Pythonu.



Predpogoji za izvedbo pretvorbe Excela v CSV

Namestitev zahtev je prvi korak. V tej vadnici uporabljamo module, kot so combine Pandas, CSV in Openpyxl itd. Pythonov paket Pandas omogoča manipulacijo in analizo podatkov. Pandas je dobro poznana knjižnica med programerji Pythona. Excelove datoteke je mogoče brati in pisati s paketom Python, znanim kot Openpyxl. S to knjižnico se ne bomo neposredno ukvarjali. Pande namesto tega interno uporabljajo Openpyxl.





Z uporabo repozitorija PyPI lahko namestimo oba paketa:

1. način: Pretvarjanje XLSX v CSV z modulom Pandas

Primer 1: Pretvarjanje ene datoteke XLSX v CSV



Pandas je odprtokodni modul, ustvarjen za programski jezik Python za manipulacijo in analizo podatkov. Za delo s časovnimi serijami in numeričnimi tabelami Pandas ponuja različne funkcije in funkcije. Z uporabo pand je mogoče brati, filtrirati in preurejati tako majhne kot velike nabore podatkov. Rezultate je mogoče ustvariti v različnih formatih, kot so Excel, JSON in CSV. Metodo read_excel() programa Pandas uporabljamo za branje datoteke excel in metodo to_csv() za pretvorbo DataFrame v datoteko CSV.

Našo datoteko .csv natisnemo kot DataFrame, kot je razvidno iz izhoda. Prejšnji skript pretvori našo datoteko XLSX v CSV in ustvari datoteko »salary.csv« v trenutnem imeniku.

Primer 2: Pretvorba datoteke XLSX (z več listi) v CSV

V naslednjem primeru najprej preberemo imena listov Excelove datoteke. Imena posameznih listov se nato pregledajo in shranijo kot ločene datoteke CSV. Skript shrani datoteke CSV na isto mesto.

Uporabljamo vzorčno datoteko XLSX z dvema ali več delovnimi listi ali preglednicami.

Kot lahko vidite, je naša datoteka XLSX sestavljena iz dveh listov (sheet1 in sheet2). Zdaj napišemo kodo za pretvorbo te datoteke XLSX v CSV.

Izhod:

Skript je datoteko XLSX z dvema listoma uspešno pretvoril v eno datoteko CSV z enim listom.

Primer 3: Pretvarjanje več datotek XLSX v ločene datoteke CSV

Razmislite o scenariju, v katerem morate pretvoriti več Excelovih datotek v vašem delovnem imeniku v CSV. Lahko bi uporabili to metodo. Začnemo s predpostavko, da vsaka datoteka vsebuje samo en list. Nato razširimo našo metodo za obdelavo več datotek in več listov. Koda Python, ki sledi, uporablja standardni modul glob. Poti datotek povežemo z uporabo vzorcev z Glob. Ujema se z vsemi datotekami s pripono .xlsx v delovnem imeniku. Nato razvijemo funkcijo, ki bere datoteke Excel in jih shrani kot datoteke CSV. To funkcijo pokličemo na vsaki najdeni poti datoteke.

Ta prejšnji skript pretvori vse datoteke xlsx v trenutnem imeniku v datoteke CSV.

Zdaj pretvorimo datoteke XLSX z več preglednicami v CSV. To je verjetno najtežji del. V našem delovnem imeniku so tri datoteke Excel. Poleg tega so nekateri sestavljeni iz več kot enega lista. Naš cilj je:

  1. Ustvarite imenik za vsako datoteko preglednice,
  2. Datotečne liste excel pretvorite v CSV in jih shranite v novo ustvarjenem imeniku.

Skript pretvori XLSX z eno in več listi v ločene datoteke CSV in jih shrani v nove imenike z istim imenom.

Za pridobitev vsake Excelove datoteke, ki se nahaja v trenutnem imeniku, se uporablja funkcija glob. Po tem se ustvarijo mape za vsako datoteko XLSX s funkcijo os.mkdir. Datoteka CSV se nato ustvari za vsak list v novem imeniku tako, da se pomakne čez ime lista.

2. način: Pretvarjanje XLSX v CSV z uporabo modulov Openpyxl in CSV

Pri tej metodi bomo uporabili modula openpyxl in CSV za pretvorbo datotek XLSX v CSV. Za branje in pisanje datotek 2010 xlsx, xlsm, xltx in xltm je mogoče uporabiti Pythonov modul openpyxl. Modul CSV vključuje razrede, ki omogočajo branje in pisanje tabelaričnih podatkov v formatu CSV.

Za branje ali nalaganje naše datoteke xlsx uporabljamo funkcijo load_workbook() modula openpyxl. To funkcijo lahko uporabite, če morate napisati ali prebrati obstoječo datoteko XLSX/Excel v Pythonu. Po aktivaciji excela uporabimo funkcijo csv.writer() za ustvarjanje naše datoteke CSV. Nato se for-zanka uporabi za shranjevanje podatkov v podatkovnih celicah datoteke CSV. Našo datoteko example.xlsx pretvorimo v myfile.csv, kot je prikazano na naslednji sliki:

Zaključek

V tej vadnici smo vam na kratko predstavili datoteke XLSX in datoteke CSV. Razložili smo ključne razlike med obema oblikama datotek. Razpravljali smo o dveh metodah z več primeri, da bi naučili, kako je mogoče datoteke XLSX z eno ali več listi pretvoriti v datoteke CSV. Implementirali smo primer za pretvorbo več datotek XLSX v datoteke CSV hkrati. Pretvorba podatkov iz Excela v CSV je lahko preprosta ali težka. Če imate samo eno datoteko z majhnim številom listov, je preprosto. Če pa ne, je lahko težko.