Olitpa asiantuntija tai aloittelija Python-ohjelmoinnissa, sinun on tunnettava tuo moduulit komento. Uudena tulijana sinulla ei kuitenkaan ehkä ole aavistustakaan, mistä nämä moduulit tulevat.

Katsotaanpa syvemmälle ymmärtämään näiden moduulien alkuperä sekä niiden luominen ja tuominen uudelleenkäyttöä varten.

Mikä on koodin uudelleenkäytettävyys ja miksi sinun pitäisi tehdä se?

Yksi parhaista käytännöistä työskennellessäsi useimpien palvelinpuolen kielten kanssa on modularisoida koodi niin, että se voidaan käyttää uudelleen. Koska Python on olio-suuntautunut, se on yksi niistä kielistä, joka tekee koodin uudelleenkäytettäväksi.

Koodimodulaatioon kuuluu koodien kirjoittaminen, jotka suorittavat erilaisia ​​ohjeita lohkoina. Sitä käytetään tehtävien erottamiseen toisistaan.

Kun moduloit koodia, annat sille yksilöllisen nimen. Tämä nimi on sen identiteetti ja tarkoittaa, että seuraavan kerran, kun sinun on käytettävä kyseistä koodilohkoa, sinun tarvitsee vain kutsua sen nimi eikä koko koodi.

instagram viewer

Tämä käytäntö tekee työstäsi paljon helpompaa ja nopeampaa tosielämän projektin aikana. Koodimodulaatio parantaa myös suoritusnopeutta ja helpottaa testaamista. Pohjimmiltaan se tekee koodistasi tehokkaamman ja luettavamman.

Vaikka tässä oleva esimerkkimme ei perustu olio-ohjelmointiin (OOP), meidän on keskusteltava siitä lyhyesti ennen moduulin luomista.

Koodi, jonka aiot käyttää uudelleen, voi joskus olla erillinen toiminto. Mutta se voi olla myös muodossa menetelmiä jonkin sisällä luokassa. Silloin OOP-konsepti tulee esiin.

Kohdeohjattu ohjelmointi Pythonissa

OOP on koodien esittely itsenäisinä objekteina luokan muodossa. Jokaisella objektilla on sitten sen ominaisuudet ja menetelmät.

Nämä attribuutit ovat luokan ominaisuuksia, kun taas kukin menetelmä määrittelee attribuuttien käyttäytymisen.

Sen sijaan, että kirjoittaisit vähemmän koodia, joka on vähemmän tehokas, käytäntö ohjelmoinnissa tulee tehokkaammaksi ja tarkemmaksi OOP: ssa. Syynä on se, että toiminnot ja tiedot tallennetaan itsenäisiin luokkiin OOP: ssa, toisin kuin molemmat erotetaan prosessiohjelmoinnissa.

Jokainen luomasi luokka ottaa sitten identiteetin. Joten kun tarvitset nimettyä moduulia luokasta, kutsut sitä viittaamalla kyseiseen luokkaan.

Saadaksesi paremman käsityksen, tutustu meidän aloittelijan opas OOP: n ymmärtämiseen.

Mikä on objektisuuntautunut ohjelmointi? Maallikon ehdoissa selitetyt perusteet

Useimmat nykyaikaiset ohjelmointikielet tukevat "olio-ohjelmoinnin" (OOP) paradigmaa. Mutta mikä OOP tarkalleen on ja miksi se on niin hyödyllinen?

Uudelleenkäytettävien toimintojen tekeminen: käytännön esimerkki

Siirrymme eteenpäin, katsotaanpa, kuinka voimme käyttää funktiota sanalaskurin toisessa Python-tiedostossa. Tämä opas keskittyy vain sellaisten uudelleenkäytettävien toimintojen luomiseen, jotka eivät ole kohteen sisällä.

Aloita avaamalla komentokehote mihin tahansa tietokoneesi paikkaan aloittaaksesi uuden projektin. Tässä tapauksessa käytämme projektin nimeä sanamäärä. Voit tehdä sen kirjoittamalla mkdir sana_luku.

Käytä seuraavaksi haluamaasi virtuaalisen ympäristön työkalua luoda uuden virtuaalisen ympäristön. Jos olet jo luonut sellaisen, aktivoi se. Varmista, että olet edelleen projektisi hakemistossa.

Hyvänä käytäntönä sanan laskutoiminnon luomiseksi yritämme ensin selvittää raaka kaava sen laskemiseksi. Yleensä sanamäärä löytyy lisäämällä yksi lauseen välilyönteihin. Huomaa, että vaikka sanamääriä ei ehkä tarvita, tässä selityksessä on tärkeää, miten idea liittyy koodin uudelleenkäytettävyyteen.

Seuraavaksi avaa tekstieditori projektisi sijaintiin ja luo uusi Python-tiedosto. Tässä tapauksessa tiedosto on nimetty wordcounter.py; varmista, että käytät oikeaa .py laajennus.

Tässä mitä sanalaskuri tiedosto näyttää tältä:

# luo muuttuja nimeltä sana, joka pitää sisällään jonoja
sana = ['miten tehdään sanalaskuri pythonissa']
# Seuraavaksi selaa muuttujan läpi laskeaksesi luodun muuttujan sanat
NumberOfWords = [JokainenSana.luku ('') + 1 jokaiselle sanalle sanassa]
tulosta (NumberOfWords)
lähtö: [8]

Nyt, kun raakakoodi toimii, moduloimme sen sitten luomalla toiminnon, joka tekee koodista uudelleenkäytettävän:

def CountWords (sanat):
jos sanat eivät ole Ei mitään:
NumberOfWords = [Jokainen sana.luku ('') + 1 jokaiselle sanalle sanoin]
palauta NumberOfWords
mywords = ['sanalaskurin tekeminen pythonissa']
tulosta (CountWords (mywords))
lähtö: [6]

Se siitä; olemme luoneet sanalaskurimoduulin. Katsotaanpa, kuinka käyttää sitä uudelleen.

Luodun moduulin tuominen

Muista, että olet aiemmin luonut tiedoston nimeltä wordcounter.py. Tuo tiedosto sisältää funktion nimeltä CountWords. Jos tarvitset tätä toimintoa uudessa tiedostossa etkä halua kirjoittaa koko koodia tai toimintoa uudelleen, sinun tarvitsee vain tuoda tämä toiminto moduulina uuteen tiedostoon.

Huomaa, että tässä tapauksessa kaikkien Python-tiedostojesi on oltava samassa hakemistossa. Varmista, että näin on, luomalla uusi Python-tiedosto samaan hakemistoon, jossa sinulla on wordcounter.py tiedosto.

Näin uusi tiedosto näyttää:

alkaen wordcounter tuo CountWords
words = ["kuinka tuoda ja käyttää koodia uudelleen Pythonissa"]
CountWords (sanat)
lähtö: [9]

Yllä olevassa katkelmassa CountWords on toiminto sisällä wordcounter.py tiedosto. Jos haluat käyttää tätä toimintoa uudessa Python-tiedostossa, tuomme sen vanhemmasta tiedostosta (wordcounter.py).

Luomasi moduulin tuonti ehdottomasti

Entä jos uusi tiedosto ei ole samassa hakemistossa kuin moduulitiedosto? Näissä tapauksissa sinun on viitattava moduuliin absoluuttisen tuonnin avulla.

Oletetaan, että olet luonut uuden tiedoston projektisi hakemistoon ymmärtääksemme sen hieman pidemmälle. Mutta tiedosto, josta aiot tuoda toiminnon (joka on sanalaskuri, tässä tapauksessa) on toisessa kansiossa projektisi hakemistossa, joka kutsuu kyseistä kansiota subword_count.

Moduulin tuominen kohteesta sanalaskuri (joka on nyt subword_count kansio) uuteen Python-tiedostoon, sinun on kutsuttava sitä ehdottomasti. Jos haluat nähdä, miten tämä toimii, luo uusi tiedosto projektisi hakemistoon, anna sille haluamasi nimi ja tuo moduuli alla olevan koodinpätkän mukaisesti:

tiedostosta subword_count.wordcounter tuo CountWords
words = ["kuinka tuoda ja käyttää koodia Pythonissa eri kansioissa oleville tiedostoille."]
CountWords (sanat)
lähtö: [14]

Absoluuttisen tuonnin aikana Python selaa pääkansiota (subword_count tässä tapauksessa) ja etsii tiedosto tai moduuli, joka sisältää kiinnostavan toiminnon (CountWords).

Edellä olevan absoluuttisen tuonnin merkityksen erittelemiseksi subword_count on kansio projektisi hakemistossa, joka sisältää wordcounter.py tiedosto. Tiedosto sisältää sitten CountWords toiminto.

Missä koodin uudelleenkäytettävyys toimii?

Koodin muokkaaminen ja uudelleenkäyttö on paras käytäntö jokaiselle käynnissä olevalle projektille. Jos kirjoitat OOP: n, jota todennäköisesti teet usein, voit tuoda luokan moduulista tai kutsua funktion luokassa. Jos luokka on kansiossa, tuo se ehdottomasti uuteen tiedostoon.

Sama käytäntö koskee toimintoja, jotka eivät ole objektissa. Projektisi asettelusta riippuen voit tuoda ne nimenomaisesti tai ehdottomasti, kuten olemme tehneet edellä.

Sähköposti
Aloittelijan opas Python-objektisuuntautuneeseen ohjelmointiin

Jotta voit hyödyntää täysin Pythonin vahvuuksia, sinun on opittava, kuinka Python toimii olio-ohjelmoinnin (OOP) kanssa.

Liittyvät aiheet
  • Ohjelmointi
  • Ohjelmointi
  • Python
  • Olio-ohjelmointi
Kirjailijasta
Idowu Omisola (45 artikkelia julkaistu)

Idowu on intohimoisesti kaikesta älykkäästä tekniikasta ja tuottavuudesta. Vapaa-ajallaan hän leikkii koodauksella ja vaihtaa shakkilautaan, kun hän on tylsistynyt, mutta rakastaa myös irti rutiinista silloin tällöin. Hänen intohimonsa osoittaa ihmisille tien ympäri nykytekniikkaa motivoi häntä kirjoittamaan enemmän.

Lisää Idowu Omisolasta

Tilaa uutiskirjeemme

Liity uutiskirjeeseemme, jossa on teknisiä vinkkejä, arvosteluja, ilmaisia ​​e-kirjoja ja erikoistarjouksia!

Vielä yksi askel !!!

Vahvista sähköpostiosoitteesi juuri lähettämässäsi sähköpostiviestissä.

.