Python

Excel-laskentataulukoiden käsittely Pythonilla

Excel-laskentataulukoiden käsittely Pythonilla

Microsoft Excel on taulukkolaskentaohjelmisto, jota käytetään taulukkotietojen tallentamiseen ja hallintaan. Lisäksi Excelillä laskelmat voidaan suorittaa soveltamalla kaavoja tietoihin, ja tietojen visualisointeja voidaan tuottaa.Monet laskentataulukoissa tehtävät tehtävät, kuten matemaattiset operaatiot, voidaan automatisoida ohjelmoinnin avulla, ja monilla ohjelmointikielillä on moduuleja Excel-laskentataulukoiden käsittelyyn. Tässä opetusohjelmassa näytämme sinulle, kuinka Pythonin openpyxl-moduulia käytetään Excel-laskentataulukoiden lukemiseen ja muokkaamiseen.

Openpyxlin asentaminen

Ennen kuin voit asentaa openpyxl: n, sinun on asennettava pip. Pip-tiedostoa käytetään Python-pakettien asentamiseen. Suorita seuraava komento komentokehotteessa nähdäksesi, onko pip asennettu.

C: \ Users \ windows> pip-ohje

Jos pip-ohjeen sisältö palautetaan, pip asennetaan; muuten siirry seuraavaan linkkiin ja lataa get-pip.py-tiedosto:

https: // bootstrap.pypa.io / get-pip.py

Suorita seuraava komento asentaaksesi pip:

C: \ Users \ windows> python get-pip.py

Kun pip on asennettu, seuraavaa komentoa voidaan käyttää openpyxl: n asentamiseen.

C: \ Users \ windows> pip install openpyxl

Excel-asiakirjan luominen

Tässä osassa käytämme openpyxl-moduulia Excel-asiakirjan luomiseen. Avaa ensin komentokehote kirjoittamalla hakupalkkiin cmd; kirjoita sitten

C: \ Users \ windows> python

Voit luoda Excel-työkirjan tuomalla openpyxl-moduulin ja luomalla sitten työkirjan 'Workbook ()' -menetelmällä.

>>> # tuo openpyxl-moduulia
>>> Tuo openpyxl
>>> # Työkirjan alustaminen
>>> työkirja = openpyxl.Työkirja ()
>>> # työkirjan tallentaminen esimerkkinä.xlsx '
>>> työkirja.tallenna ('esimerkki.xlsx ')

Yllä olevat komennot luovat Excel-asiakirjan, jota kutsutaan esimerkiksi.xlsx. Seuraavaksi käsittelemme tätä Excel-asiakirjaa.

Taulukoiden käsittely Excel-dokumentissa

Olemme luoneet Excel-asiakirjan nimeltä esimerkki.xlsx. Nyt käsittelemme tämän asiakirjan arkkia Pythonilla. Openpyxl-moduulissa on 'create_sheet ()' -menetelmä, jota voidaan käyttää uuden taulukon luomiseen. Tässä menetelmässä on kaksi argumenttia: hakemisto ja otsikko. Hakemisto määrittää taulukon sijoittelun käyttämällä mitä tahansa ei-negatiivista kokonaislukua (mukaan lukien 0), ja otsikko on taulukon otsikko. Luettelo kaikista työkirja-objektin taulukoista voidaan näyttää soittamalla taulukon nimiluetteloon.

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # nykyisen Excel-asiakirjan lataaminen työkirjaobjektiin
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Uuden arkin luominen 0. indeksissä
>>> työkirja.create_sheet (hakemisto = 0, otsikko = 'Ensimmäinen taulukko')

>>> # Kaikkien arkkien saaminen
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki', 'Arkki']
>>> # Excel-asiakirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Yllä olevassa koodissa loimme taulukon nimeltä Ensimmäinen arkki ja sijoitimme sen 0. indeksiin. Aikaisemmin 0. indeksissä sijaitseva arkki siirrettiin ensimmäiseen hakemistoon, kuten tulosteet osoittavat. Nyt aiomme muuttaa alkuperäisen arkin nimen Arkin toiselle arkille.

Otsikko-attribuutilla on taulukon nimi. Jos haluat nimetä taulukon uudelleen, meidän on ensin siirryttävä kyseiselle taulukolle seuraavasti.

>>> # Aktiivisen taulukon hakeminen Excel-dokumentista
>>> taulukko = työkirja.aktiivinen
>>> # Arkin nimi
>>> tulosta (arkki.otsikko)
Ensimmäinen arkki >>> # Siirtyminen toiselle arkille (hakemistossa 1)
>>> työkirja.aktiivinen = 1
>>> # Aktiivisen arkin saaminen
>>> taulukko = työkirja.aktiivinen
>>> # tulostusarkin nimi
>>> tulosta (arkki.otsikko)
Arkki >>> # Arkin otsikon muuttaminen
>>> arkki.title = 'Toinen arkki'
>>> # Arkin otsikko
>>> tulosta (arkki.otsikko)
Toinen arkki

Vastaavasti voimme poistaa taulukon Excel-asiakirjasta. Openpyxl-moduuli tarjoaa remove () -menetelmän arkin poistamiseksi. Tämä menetelmä ottaa taulukon nimen poistettavaksi argumenttina ja poistaa sitten arkin. Voimme poistaa toisen arkin seuraavasti:

>>> # arkin poistaminen nimen mukaan
>>> työkirja.poista (työkirja ['Toinen arkki'])
>>> # saamassa kaikki arkit
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki']
>>> # Excel-asiakirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Tietojen lisääminen soluihin

Toistaiseksi olemme osoittaneet, kuinka luoda tai poistaa taulukoita Excel-asiakirjassa. Nyt aiomme lisätä tietoja eri arkkien soluihin. Tässä esimerkissä meillä on asiakirjassa yksi arkki nimeltä First Sheet ja haluamme luoda vielä kaksi arkkia.

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Uuden arkin luominen 1. hakemistossa
>>> työkirja.create_sheet (hakemisto = 1, otsikko = 'Toinen arkki')

>>> # luodaan uusi taulukko 2. hakemistoon
>>> työkirja.create_sheet (hakemisto = 2, otsikko = 'Kolmas taulukko')

>>> # haetaan kaikki arkit
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki', 'Toinen arkki', 'kolmas arkki']

Meillä on nyt kolme arkkia, ja lisäämme tietoja näiden arkkien soluihin.

>>> # Ensimmäisen arkin saaminen
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Tietojen lisääminen ensimmäisen arkin A1-soluun
>>> sheet_1 ['A1'] = 'Nimi'
>>> # Toisen arkin saaminen
>>> sheet_2 = työkirja ['toinen arkki']
>>> # Tietojen lisääminen toisen arkin A1-soluun
>>> sheet_2 ['A1'] = 'ID'
>>> # Kolmannen arkin saaminen
>>> sheet_3 = työkirja ['kolmas arkki']
>>> # Tietojen lisääminen kolmannen arkin A1-soluun
>>> sheet_3 ['A1'] = 'Arvosanat'
>>> # Excel-työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Excel-taulukoiden lukeminen

Openpyxl-moduuli käyttää solun arvoattribuuttia kyseisen solun tietojen tallentamiseen. Voimme lukea solun tiedot kutsumalla solun arvoattribuutin. Nyt meillä on kolme arkkia, ja jokainen arkki sisältää joitain tietoja. Voimme lukea tiedot käyttämällä seuraavia toimintoja openpyxl: ssä:

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Ensimmäisen arkin saaminen
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Toisen arkin saaminen
>>> sheet_2 = työkirja ['toinen arkki']
>>> # Kolmannen arkin saaminen
>>> sheet_3 = työkirja ['kolmas arkki']
>>> # tulostustiedot ensimmäisen arkin A1-solusta
>>> tulosta (arkki_1 ['A1'].arvo)
Nimi
>>> # tulostustiedot toisen arkin A1-solusta
>>> tulosta (arkki_2 ['A1'].arvo)
Henkilötunnus
>>> # tulostustiedot kolmannen arkin A1-solusta
>>> tulosta (arkki_3 ['A1'].arvo)
Arvosanat

Fonttien ja värien vaihtaminen

Seuraavaksi näytämme sinulle, kuinka voit muuttaa solun fontin käyttämällä Font () -toimintoa. Tuo ensin openpyxl.tyylit -objekti. Font () -menetelmä vie luettelon argumenteista, mukaan lukien:

  • nimi (merkkijono): fontin nimi
  • koko (int tai kelluva): fontin koko
  • alleviivattu (merkkijono): alleviivattu tyyppi
  • väri (merkkijono): tekstin heksadesimaaliväri
  • kursiivi (bool): onko fontti kursivoitu
  • lihavoitu (bool): onko kirjasin lihavoitu

Tyylien soveltamiseksi meidän on ensin luotava objekti välittämällä kaikki parametrit Font () -metodille. Sitten valitsemme taulukon ja arkin sisällä solun, johon haluamme soveltaa tyyliä. Sitten käytämme tyyliä valittuun soluun.

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # fonttimenetelmän tuonti openpyxl: stä.tyylejä
>>> from openpyxl.tyylit tuovat fontin
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Tyyliobjektin luominen
>>> style = Font (nimi = 'Consolas', koko = 13, lihavoitu = True,
… Kursiivi = väärä)
>>> # Arkin valinta työkirjasta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Valitse solu, johon haluamme lisätä tyylejä
>>> a1 = arkki_1 ['A1']
>>> # Tyylien käyttäminen soluun
>>> a1.font = tyyli
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Reunojen käyttäminen soluihin

Voimme soveltaa reunoja Excel-taulukon soluihin käyttämällä openpyxlin Border () ja Side () -menetelmiä.tyylejä.reunamoduuli. Voimme välittää erilaisia ​​toimintoja parametreina Border () -menetelmälle. Seuraavassa on joitain toimintoja, jotka välitetään parametreina Border () -metodille reunan mittojen määrittämiseksi.

  • vasemmalle: aseta reuna solun vasemmalle puolelle
  • oikein: aseta reuna solun oikealle puolelle
  • alkuun: käytä reunaa solun yläosaan
  • pohjassa: käytä reunaa solun alaosaan

Nämä toiminnot käyttävät tyylimääritteitä parametreina. Style-määritelmä määrittää reunan tyylin (esim.g., kiinteä, katkoviiva). Tyyliparametreillä voi olla jokin seuraavista arvoista.

  • kaksinkertainen: kaksirivinen raja
  • katkoviiva: katkoviiva
  • ohut: ohut reunus
  • keskipitkällä: keskiraja
  • mediumDashDot: katkoviiva ja katkoviiva, keskipaino
  • paksu: paksu reunus
  • dashDot: katkoviiva ja katkoviiva
  • hiukset: erittäin ohut reunus
  • pisteviiva: katkoviiva

Nyt sovellamme erityyppisiä rajoja laskentataulukoiden eri soluihin. Ensin valitsemme solut ja sitten määritämme reunatyylit ja käytämme näitä tyylejä eri soluihin.

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # Border- ja Side-luokkien tuonti
>>> from openpyxl.tyylejä.reunat tuonti Border, Side
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Arkin valinta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Eri solujen valinta taulukosta
>>> solu_1 = taulukko_1 ['A1']
>>> solu_2 = arkki_1 ['B2']
>>> solu_3 = arkki_1 ['C3']
>>> # Eri reunatyyppien määrittely
>>> style_1 = Border (ala = Side (style = 'pisteviiva'))
>>> style_2 = Border (oikea = Side (style = 'slim'))
>>> style_3 = Border (ylhäältä = Side (style = 'dashDot'))
>>> # reunatyylien soveltaminen soluihin
>>> solu_1.reunus = tyyli_1
>>> solu_2.reunus = tyyli_2
>>> solu_3.reunus = tyyli_3
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Rivin ja sarakkeen mittojen säätäminen

Excel-asiakirjan rivin korkeutta ja sarakkeen leveyttä voidaan säätää myös Pythonilla. Openpyxl-moduulissa on kaksi sisäänrakennettua menetelmää, joita voidaan käyttää näiden toimintojen suorittamiseen. Ensin valitaan arkki, jonka haluamme muuttaa sarakkeen leveyttä tai rivin korkeutta. Sitten sovellamme menetelmää tiettyyn riviin tai sarakkeeseen.

>>> # tuo openpyxl-tiedostoa
>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # valintataulukko
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # ensimmäisen rivin korkeuden muuttaminen
>>> arkki_1.rivimitat [1].korkeus = 50
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Vastaavasti voimme muuttaa sarakkeen leveyttä seuraavalla koodilla

>>> # taulukon valinta Excel-työkirjasta
>>> sheet_2 = työkirja ['toinen arkki']
>>> # sarakkeen leveyden muuttaminen
>>> arkki_2.sarakkeen mitat ['A'].leveys = 50
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Yllä oleva koodi muuttaa ensimmäisen rivin korkeuden 50 pt: ksi ja sarakkeen A leveyden 50 pt: ksi.

Solujen yhdistäminen ja purkautuminen

Kun työskentelemme Excel-laskentataulukoiden kanssa, meidän on usein yhdistettävä ja purettava solut. Solujen yhdistämiseksi Pythonissa voidaan käyttää yksinkertaista openpyxl-pohjaista toimintoa. Openpyxl-moduuli tarjoaa merge_cells () -menetelmän, jota voidaan käyttää solujen yhdistämiseen Excelissä. Uusi solu saa vasemman yläkulman solun nimen. Esimerkiksi, jos haluamme yhdistää solut solusta A1 soluun B2, uudelle muodostetulle solulle viitataan nimellä A1. Jos haluat yhdistää solut openpyxl: n avulla, valitsemme ensin taulukon ja sitten sovellamme merge_cells () -menetelmää taulukkoon.

>>> # tuo openpyxl-moduulia
>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # ensimmäisen arkin valitseminen Excel-työkirjasta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # solujen yhdistäminen A1: stä B2: een taulukossa 1
>>> arkki_1.merge_cells ('A1: B2')
>>> # työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Vastaavasti unmerge_cells () -menetelmää voidaan käyttää solujen purkamiseen Excel-laskentataulukossa. Seuraavaa koodia voidaan käyttää solujen purkamiseen:

>>> # taulukon valitseminen työkirjasta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # sulkeutumatonta solua A1: stä B2: een
>>> arkki_1.unmerge_cells ('A1: B2')
>>> # työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')

Johtopäätös

Excel-laskentataulukoita käytetään yleisesti tietojen käsittelyyn. Tällaiset tehtävät voivat kuitenkin olla yksitoikkoisia. Siksi tällaisissa tapauksissa ohjelmointia voidaan käyttää laskentataulukoiden käsittelyn automatisointiin.

Tässä artikkelissa keskusteltiin joistakin Pythonin openpyxl-moduulin hyödyllisistä toiminnoista. Esitimme sinulle, miten luodaan, luetaan, poistetaan ja muokataan Excel-laskentataulukoita, miten muutetaan tyyliä, käytetään kirjasinta, reunoja ja solujen mittoja sekä miten solut yhdistetään ja yhdistetään. Käyttämällä näitä toimintoja voit automatisoida monia laskentataulukoiden manipulointitehtäviä Pythonilla.

Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...
Unity3D Tutorial
Introduction to Unity 3D Unity 3D is a powerful game development engine. It is cross platform that is it allows you to create games for mobile, web, d...