Akár szakértő, akár kezdő vagy a Python programozásában, ismernie kell a modulok importálása parancs. Újoncként azonban elképzelhető, hogy nincs ötlete, honnan származnak ezek a modulok.
Vizsgáljuk meg alaposabban, hogy megértsük ezeknek a moduloknak az eredetét, valamint az újrafelhasználás céljából történő létrehozásuk és importálásuk módját.
Mi a kód újrafelhasználhatósága, és miért kellene ezt tennie?
A legtöbb szerveroldali nyelv használatakor az egyik legjobb gyakorlat a modul modulálása úgy, hogy újrafelhasználható legyen. Mivel a Python objektumorientált, egyike azoknak a nyelveknek, amelyek lehetővé teszik a kód újrafelhasználhatóságát.
A kódmoduláció olyan kódok írását jelenti, amelyek különböző utasításokat hajtanak végre blokkokban. Feladatok elválasztására használják egymástól.
Egy modul modulálásakor egyedi nevet ad neki. Ez a név a személyazonossága, és azt jelenti, hogy amikor legközelebb használni fogja azt a blokkot, akkor csak a nevét kell felhívnia, és nem a teljes kódot.
Ez a gyakorlat sokkal könnyebbé és gyorsabbá teszi munkáját egy valós projekt során. A kódmoduláció javítja a végrehajtás sebességét és megkönnyíti a tesztelést. Lényegében hatékonyabbá és olvashatóbbá teszi a kódot.
Noha az itt bemutatott példánk nem objektum-orientált programozáson (OOP) alapul, röviden át kell beszélnünk, mielőtt továbblépnénk a modul létrehozására.
Az újrafelhasználni kívánt kód néha önállóan is funkcionálhat. De lehet formájában is mód a osztály. Ekkor lép életbe az OOP koncepciója.
Objektumorientált programozás Pythonban
Az OOP a kódok önálló objektumként való bemutatása osztály formájában. Ezután minden objektumnak megvannak a tulajdonságai és módszerei.
Ezek az attribútumok az osztály jellemzői, miközben mindegyik módszer meghatározza az attribútumok viselkedését.
Ahelyett, hogy kevésbé hosszú kódot írna, az eljárási programozásban a konvenció hatékonyabbá és specifikusabbá válik az OOP-ban. Ennek oka az, hogy a függvényeket és az adatokat az OOP független osztályokban tárolja, szemben mindkettő elválasztásával az eljárási programozásban.
Minden létrehozott osztály felvesz egy identitást. Tehát, ha egy osztály nevű moduljára van szüksége, akkor az adott osztályra hivatkozva hívja meg.
A jobb megértés érdekében vessen egy pillantást a mi oldalunkra kezdő útmutató az OOP megértéséhez.
A legtöbb modern programozási nyelv támogatja az "objektum-orientált programozás" (OOP) paradigmát. De mi is pontosan az OOP, és miért olyan hasznos?
Újrafelhasználható funkciók készítése: gyakorlati példa
Továbblépve nézzük meg, hogyan használhatjuk fel újra a függvényt egy másik Python-fájlban található szószámlálóhoz. Ez az útmutató csak olyan újrafelhasználható funkciók létrehozására összpontosít, amelyek nincsenek az objektumon belül.
Először is nyisson meg egy parancssort a számítógép bármely pontján, hogy új projektet indítson. Ebben az esetben a (z) projekt nevét fogjuk használni szavak száma. Ehhez írja be mkdir szó_szám.
Ezután használja a kívánt virtuális környezet eszközt hozzon létre egy új virtuális környezetet. Ha már létrehozott egyet, egyszerűen aktiválja. Győződjön meg arról, hogy még mindig a projekt könyvtárában van.
Jó gyakorlatként a számláló függvény létrehozásához először megpróbálunk kitalálni egy nyers képletet annak kiszámításához. Általában úgy találhatja meg a szavak számát, hogy egyet ad hozzá a mondat szóközéhez. Vegye figyelembe, hogy bár lehet, hogy nincs szüksége szószámra, ennek a magyarázatnak az számít, hogy az ötlet hogyan kapcsolódik a kód újrafelhasználhatóságához.
Ezután nyisson meg egy szövegszerkesztőt a projekt helyén, és hozzon létre egy új Python fájlt. Ebben az esetben a fájl neve: wordcounter.py; győződjön meg arról, hogy a megfelelőt használja .py kiterjesztés.
Itt van, amit a szószámláló fájl a következőképpen néz ki:
# hozzon létre egy szó nevű változót, amely tartalmaz néhány karakterláncot
word = ['hogyan lehet szószámlálót készíteni a pythonban']
# Ezután folytassa a változót a létrehozott változó szavainak számlálásához
NumberOfWords = [EachWord.count ('') + 1 a szavak mindegyikéhez)
nyomtatás (NumberOfWords)
kimenet: [8]
Most, hogy a nyers kód működik, akkor moduláljuk egy olyan funkció létrehozásával, amely a kódot újrafelhasználhatóvá teszi:
def CountWords (szavak):
ha a szavak nem: Nincs:
NumberOfWords = [Mindenszó.szám ('') + 1 az egyes szavakhoz szavakban]
return NumberOfWords
mywords = ['szószámláló készítése a pythonban']
nyomtatás (CountWords (mywords))
kimenet: [6]
Ez az; létrehoztunk egy szószámláló modult. Nézzük meg, hogyan lehet újra felhasználni.
A létrehozott modul importálása
Ne feledje, hogy korábban létrehozott egy nevű fájlt wordcounter.py. Ez a fájl nevű függvényt tartalmaz CountWords. Ha egy új fájlban szüksége van erre a funkcióra, és nem akarja átírni a teljes kódot vagy függvényt, akkor csak annyit kell tennie, hogy ezt a funkciót modulként importálja az új fájlba.
Vegye figyelembe, hogy ebben az esetben az összes Python-fájljának ugyanabban a könyvtárban kell lennie. Annak biztosítására, hogy ez a helyzet, csak hozzon létre egy új Python fájlt ugyanabban a könyvtárban, ahol van wordcounter.py fájl.
Így néz ki az új fájl:
a wordcounter importból CountWords
words = ["a kód importálása és újrafelhasználása a Pythonban"]
CountWords (szavak)
kimenet: [9]
A fenti részletben CountWords a függvény a wordcounter.py fájl. A funkció új Python fájlban történő újrafelhasználásához importáljuk a szülőfájlból (wordcounter.py).
A létrehozott modul importálása teljesen
Mi van, ha az új fájl nem ugyanabban a könyvtárban van, mint a modul fájl? Ezekben az esetekben abszolút importálással kell hivatkoznia a modulra.
Hogy ezt egy kicsit tovább megértsük, tegyük fel, hogy létrehozott egy új fájlt a projekt könyvtárában. De az a fájl, amelyből importálni kívánja a függvényét (ami szószámláló(ebben az esetben), egy másik mappában található a projekt könyvtárában, hívja meg ezt a mappát alszó_szám.
A modul importálása innen: szószámláló (ami most a alszó_szám mappa) egy új Python fájlba, abszolút meg kell hívnia. Ennek működésének megtekintéséhez hozzon létre egy új fájlt a projekt könyvtárában, adja meg a kívánt nevet, és importálja a modult az alábbi kódrészletben leírtak szerint:
from subword_count.wordcounter importálja a CountWords-t
words = ["hogyan lehet importálni és újrafelhasználni a kódot a Pythonban a különböző mappákban lévő fájlokhoz."]
CountWords (szavak)
kimenet: [14]
Az abszolút importálás során a Python böngészi a szülő mappát (alszó_szám ebben az esetben), és keresse meg a kívánt funkciót tartalmazó fájlt vagy modult (CountWords).
A fenti abszolút import jelentésének lebontásához, alszó_szám egy mappa a projekt könyvtárában, amely a wordcounter.py fájl. Ez a fájl ezután tartalmazza a CountWords funkció.
Hol működik a kód újrafelhasználhatósága?
A kód modulálása és újrafelhasználása a futtatott projektek legjobb gyakorlata. Ha OOP-t ír, amit valószínűleg gyakran fog megtenni, akkor importálhat osztályt egy modulból, vagy meghívhat egy funkciót egy osztályból. Ha az osztály egy mappában van, importálja abszolút az új fájlba.
Ugyanez a gyakorlat vonatkozik azokra a funkciókra is, amelyek nincsenek objektumban. A projekt elrendezésétől függően importálhatja őket kifejezetten vagy abszolút módon, ahogy fentebb tettük.
A Python erősségeinek teljes kihasználása érdekében meg kell tanulnia, hogyan működik a Python az objektum-orientált programozással (OOP).
- Programozás
- Programozás
- Piton
- Objektumorientált programozás
Idowu minden okos technológiával és termelékenységgel rajong. Szabadidejében kódolással játszik, és ha unatkozik, átvált a sakktáblára, de szereti egyszer-egyszer elszakadni a rutintól is. Az a szenvedély, hogy megmutatja az embereknek a modern technológiát, további írásra ösztönzi.
Iratkozzon fel hírlevelünkre
Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!
Még egy lépés…!
Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.