Ať už jste programátorem v Pythonu nebo jste začátečník, musíte být obeznámeni s importovat moduly příkaz. Jako nováček však možná nemáte představu, odkud tyto moduly pocházejí.

Podívejme se hlouběji na porozumění původu těchto modulů a na to, jak je vytvořit a importovat pro opětovné použití.

Co je opakovaná použitelnost kódu a proč byste to měli dělat?

Jedním z nejlepších postupů při práci s většinou jazyků na straně serveru je modulace vašeho kódu tak, aby byl znovu použitelný. Protože Python je objektově orientovaný, je to jeden z těch jazyků, který umožňuje opětovné použití kódu.

Modularizace kódu zahrnuje psaní kódů, které provádějí různé instrukce v blocích. Používá se k oddělení úkolů od sebe navzájem.

Když modularizujete kód, dáte mu jedinečný název. Toto jméno je jeho identita a znamená, že příště budete muset použít tento blok kódu, stačí zavolat pouze jeho název a ne celý kód.

Díky této praxi je vaše práce během projektu v reálném životě mnohem jednodušší a rychlejší. Modularizace kódu také zlepšuje rychlost provádění a usnadňuje testování. V podstatě to dělá váš kód efektivnějším a čitelnějším.

instagram viewer

Zatímco náš příklad zde není založen na objektově orientovaném programování (OOP), musíme o něm krátce diskutovat, než přejdeme k vytvoření modulu.

Kód, který chcete někdy znovu použít, může stát samostatně jako jednotlivé funkce. Ale může to být také ve formě metody v třída. Tehdy vstupuje do hry koncept OOP.

Objektově orientované programování v Pythonu

OOP je prezentace kódů jako samostatných objektů ve formě třídy. Každý objekt má poté své atributy a metody.

Tyto atributy jsou charakteristikami třídy, zatímco každá metoda definuje chování atributů.

Namísto psaní dlouhého kódu, který je méně efektivní, konvence v procedurálním programování se váš kód stane efektivnějším a konkrétnějším v OOP. Důvodem je to, že funkce a data jsou uloženy v nezávislých třídách v OOP, na rozdíl od oddělení obou v procedurálním programování.

Každá třída, kterou vytvoříte, pak získá identitu. Takže když potřebujete pojmenovaný modul z třídy, zavoláte jej s odkazem na tuto třídu.

Chcete-li lépe porozumět, podívejte se na naše Průvodce pro začátečníky k porozumění OOP.

Co je objektově orientované programování? Základy vysvětleny laicky

Většina moderních programovacích jazyků podporuje paradigma „objektově orientovaného programování“ (OOP). Ale co přesně je OOP a proč je tak užitečný?

Vytváření opakovaně použitelných funkcí: praktický příklad

Pokračujeme, pojďme se podívat na to, jak můžeme znovu použít funkci čítače slov v jiném souboru Pythonu. Tato příručka se zaměří pouze na vytváření opakovaně použitelných funkcí, které nejsou uvnitř objektu.

Nejprve otevřete příkazový řádek do libovolného umístění v počítači a spusťte nový projekt. V tomto případě použijeme název projektu počet slov. Chcete-li to provést, zadejte mkdir word_count.

Dále použijte upřednostňovaný nástroj virtuálního prostředí vytvořit nové virtuální prostředí. Pokud jste si ji již vytvořili, jednoduše ji aktivujte. Ujistěte se, že jste stále v adresáři svého projektu.

Jako dobrý postup se při vytváření funkce počítadla slov nejprve pokusíme zjistit hrubý vzorec pro její výpočet. Obecně můžete počet slov najít přidáním jednoho k počtu mezer ve větě. Všimněte si, že i když možná nebudete potřebovat počet slov, pro toto vysvětlení záleží na tom, jak myšlenka souvisí s opětovnou použitelností kódu.

Dále otevřete textový editor do umístění projektu a vytvořte nový soubor Pythonu. V tomto případě je soubor pojmenován jako wordcounter.py; ujistěte se, že používáte správné .py rozšíření.

Tady je to počítadlo slov soubor vypadá takto:

# vytvoří proměnnou nazvanou slovo, která obsahuje některé řetězce
word = ['jak vytvořit čítač slov v pythonu']
# Dále projděte proměnnou a spočítejte slova ve vytvořené proměnné
NumberOfWords = [EveryWord.count ('') + 1 pro každé slovo ve slově)
tisk (NumberOfWords)
výstup: [8]

Nyní, když surový kód funguje, jej poté modularizujeme vytvořením funkce, díky níž je kód znovu použitelný:

def CountWords (slova):
pokud slova nejsou Žádná:
NumberOfWords = [Everyword.count ('') + 1 pro každé slovo ve slovech)
vrátit NumberOfWords
mywords = ['vytvoření počítadla slov v pythonu']
tisk (CountWords (mywords))
výstup: [6]

A je to; vytvořili jsme modul počítadla slov. Uvidíme, jak to znovu použít.

Import vytvořeného modulu

Nezapomeňte, že jste dříve vytvořili soubor s názvem wordcounter.py. Tento soubor obsahuje funkci nazvanou Počet slov. Pokud potřebujete tuto funkci v novém souboru a nechcete přepsat celý kód nebo funkci, vše, co musíte udělat, je importovat tuto funkci jako modul do nového souboru.

V tomto případě musí být všechny vaše soubory Pythonu ve stejném adresáři. Abyste se ujistili, že tomu tak je, stačí vytvořit nový soubor Pythonu ve stejném adresáři, kde máte wordcounter.py soubor.

Nový soubor vypadá takto:

z počítadla slov countcount
words = ["how to import and reuse your code in Python"]
Počet slov (slov)
výstup: [9]

Ve fragmentu výše Počet slov je funkce uvnitř wordcounter.py soubor. Chcete-li tuto funkci znovu použít v novém souboru Pythonu, importujeme ji z jeho nadřazeného souboru (wordcounter.py).

Absolutně importujte svůj vytvořený modul

Co když nový soubor není ve stejném adresáři jako soubor modulu? V těchto případech musíte odkazovat na modul pomocí absolutního importu.

Abychom tomu porozuměli trochu dále, předpokládejme, že jste vytvořili nový soubor v adresáři vašeho projektu. Ale soubor, ze kterého chcete importovat svoji funkci (což je počítadlo slov, v tomto případě), je v jiné složce v rámci adresáře projektu, který tuto složku volá subword_count.

Chcete-li importovat modul z počítadlo slov (který je nyní uvnitř subword_count složku) do nového souboru Pythonu, musíte to absolutně nazvat. Chcete-li zjistit, jak to funguje, vytvořte nový soubor v adresáři vašeho projektu, dejte mu preferovaný název a importujte modul tak, jak je napsáno v níže uvedeném fragmentu kódu:

ze subword_count.wordcounter import CountWords
words = ["how to import and reuse your code in Python for files in different folders."]
Počet slov (slov)
výstup: [14]

Během absolutního importu prochází Python nadřazenou složkou (subword_count v tomto případě) a vyhledá soubor nebo modul obsahující sledovanou funkci (Počet slov).

Chcete-li rozdělit význam absolutního importu výše, subword_count je složka v adresáři vašeho projektu, která obsahuje wordcounter.py soubor. Tento soubor poté obsahuje Počet slov funkce.

Kde funguje opětovná použitelnost kódu?

Modularizace a opětovné použití kódu je osvědčeným postupem pro jakýkoli spuštěný projekt. Pokud píšete OOP, což pravděpodobně budete dělat často, můžete importovat třídu z modulu nebo volat funkci z třídy. Pokud je třída ve složce, importujte ji naprosto do nového souboru.

Stejný postup platí pro funkce, které nejsou v objektu. V závislosti na rozvržení vašeho projektu je můžete importovat explicitně nebo absolutně, jak jsme udělali výše.

E-mailem
Průvodce pro začátečníky k objektově orientovanému programování v Pythonu

Chcete-li plně využít silných stránek Pythonu, budete se chtít naučit, jak Python pracuje s objektově orientovaným programováním (OOP).

Související témata
  • Programování
  • Programování
  • Krajta
  • Objektově orientované programování
O autorovi
Idowu Omisola (45 článků publikováno)

Idowu je vášnivý pro cokoli inteligentního a produktivního. Ve svém volném čase si hraje s kódováním a když se nudí, přepne se na šachovnici, ale také rád občas vybočuje z rutiny. Jeho vášeň ukázat lidem cestu kolem moderních technologií ho motivuje k dalšímu psaní.

Více od Idowu Omisola

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!

Ještě jeden krok…!

V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.

.