Niezależnie od tego, czy jesteś ekspertem, czy początkującym w programowaniu w Pythonie, musisz znać importuj moduły Komenda. Jednak jako nowicjusz możesz nie mieć pojęcia, skąd pochodzą te moduły.
Przyjrzyjmy się dokładniej, aby poznać pochodzenie tych modułów, a także sposoby ich tworzenia i importowania w celu ponownego wykorzystania.
Co to jest możliwość ponownego wykorzystania kodu i dlaczego warto to zrobić?
Jedną z najlepszych praktyk podczas pracy z większością języków po stronie serwera jest modularyzacja kodu, aby można go było ponownie wykorzystać. Ponieważ Python jest zorientowany obiektowo, jest to jeden z tych języków, który umożliwia ponowne użycie kodu.
Modularyzacja kodu polega na pisaniu kodów, które wykonują różne instrukcje w blokach. Służy do oddzielania zadań od siebie.
Kiedy modularyzujesz kod, nadajesz mu unikalną nazwę. Ta nazwa jest jego tożsamością i oznacza, że następnym razem, gdy będziesz musiał użyć tego bloku kodu, wystarczy podać jego nazwę, a nie cały kod.
Ta praktyka znacznie ułatwia i przyspiesza pracę podczas rzeczywistego projektu. Modularyzacja kodu poprawia również szybkość wykonywania i ułatwia testowanie. Zasadniczo sprawia, że kod jest bardziej wydajny i czytelny.
Chociaż nasz przykład nie jest oparty na programowaniu obiektowym (OOP), musimy go pokrótce omówić, zanim przejdziemy do tworzenia modułu.
Kod, którego zamierzasz ponownie użyć, czasami może występować samodzielnie jako osobne funkcje. Ale może też mieć postać metody w klasa. Wtedy pojawia się koncepcja OOP.
Programowanie obiektowe w Pythonie
OOP to prezentacja kodów jako niezależnych obiektów w postaci klasy. Każdy obiekt ma wtedy swoje atrybuty i metody.
Te atrybuty są cechami klasy, podczas gdy każda metoda definiuje zachowanie atrybutów.
Zamiast pisać długi kod, który jest mniej wydajny - konwencja w programowaniu proceduralnym, twój kod staje się bardziej wydajny i specyficzny w OOP. Powodem jest to, że funkcje i dane są przechowywane w niezależnych klasach w OOP, w przeciwieństwie do oddzielenia obu w programowaniu proceduralnym.
Każda tworzona przez Ciebie klasa przyjmuje tożsamość. Więc kiedy potrzebujesz nazwanego modułu z klasy, wywołujesz go w odniesieniu do tej klasy.
Aby uzyskać lepsze zrozumienie, zapoznaj się z naszymi przewodnik dla początkujących dotyczący zrozumienia OOP.
Większość współczesnych języków programowania obsługuje paradygmat „programowania zorientowanego obiektowo” (OOP). Ale czym właściwie jest OOP i dlaczego jest tak przydatne?
Tworzenie funkcji wielokrotnego użytku: praktyczny przykład
Przechodząc dalej, przyjrzyjmy się, jak możemy ponownie użyć funkcji dla licznika słów w innym pliku Pythona. Ten przewodnik skupi się tylko na tworzeniu funkcji wielokrotnego użytku, które nie znajdują się wewnątrz obiektu.
Po pierwsze, otwórz wiersz polecenia w dowolnej lokalizacji na komputerze, aby rozpocząć nowy projekt. W tym przypadku użyjemy nazwy projektu Liczba słów. Aby to zrobić, wpisz mkdir word_count.
Następnie użyj preferowanego narzędzia środowiska wirtualnego, aby stworzyć nowe wirtualne środowisko. Jeśli już go utworzyłeś, po prostu go aktywuj. Upewnij się, że nadal jesteś w katalogu swojego projektu.
W ramach dobrej praktyki, aby utworzyć funkcję licznika słów, najpierw spróbujemy wymyślić surową formułę do jej obliczenia. Ogólnie rzecz biorąc, możesz znaleźć liczbę słów, dodając jedną do liczby spacji w zdaniu. Zauważ, że chociaż możesz nie potrzebować liczby słów, to w tym wyjaśnieniu liczy się sposób, w jaki pomysł odnosi się do możliwości ponownego wykorzystania kodu.
Następnie otwórz edytor tekstu w lokalizacji swojego projektu i utwórz nowy plik w języku Python. W tym przypadku plik nosi nazwę wordcounter.py; upewnij się, że używasz prawidłowego .py rozbudowa.
Oto, co licznik słów plik wygląda następująco:
# utwórz zmienną o nazwie słowo, która przechowuje jakieś łańcuchy
word = ['jak zrobić licznik słów w Pythonie']
# Następnie przejrzyj zmienną w pętli, aby policzyć słowa w utworzonej zmiennej
NumberOfWords = [EachWord.count ('') + 1 dla EachWord w słowie]
print (NumberOfWords)
produkcja: [8]
Teraz, gdy surowy kod działa, modularyzujemy go, tworząc funkcję, która umożliwia wielokrotne użycie kodu:
def CountWords (słowa):
jeśli słowa nie są Brak:
NumberOfWords = [Eachword.count (``) + 1 for Eachword in words]
zwraca NumberOfWords
mywords = ['tworzenie licznika słów w Pythonie']
drukuj (słowa kluczowe (słowa kluczowe))
produkcja: [6]
Otóż to; stworzyliśmy moduł licznika słów. Zobaczmy, jak go ponownie użyć.
Importowanie utworzonego modułu
Pamiętaj, że wcześniej utworzyłeś plik o nazwie wordcounter.py. Ten plik zawiera funkcję o nazwie Count words. Jeśli potrzebujesz tej funkcji w nowym pliku i nie chcesz przepisać całego kodu lub funkcji, wszystko, co musisz zrobić, to zaimportować tę funkcję jako moduł do nowego pliku.
Zauważ, że w tym przypadku wszystkie twoje pliki Pythona muszą znajdować się w tym samym katalogu. Aby upewnić się, że tak jest, po prostu utwórz nowy plik Pythona w tym samym katalogu, w którym masz rozszerzenie wordcounter.py plik.
Oto jak wygląda nowy plik:
z importu licznika słów CountWords
words = ["jak importować i ponownie używać kodu w Pythonie"]
Count words (słowa)
produkcja: [9]
W powyższym fragmencie Count words jest funkcją wewnątrz wordcounter.py plik. Aby ponownie użyć tej funkcji w nowym pliku Pythona, importujemy ją z pliku nadrzędnego (wordcounter.py).
Importowanie utworzonego modułu Absolutnie
Co się stanie, jeśli nowy plik nie znajduje się w tym samym katalogu co plik modułu? W takich przypadkach należy odwołać się do modułu przy użyciu importu bezwzględnego.
Aby lepiej to zrozumieć, załóżmy, że utworzyłeś nowy plik w katalogu swojego projektu. Ale plik, z którego zamierzasz zaimportować swoją funkcję (czyli licznik słów, w tym przypadku), znajduje się w innym folderze w katalogu projektu, wywołaj ten folder subword_count.
Aby zaimportować moduł z licznik słów (który jest teraz wewnątrz subword_count folder) do nowego pliku Pythona, musisz go bezwzględnie nazwać. Aby zobaczyć, jak to działa, utwórz nowy plik w katalogu projektu, nadaj mu preferowaną nazwę i zaimportuj moduł zgodnie z poniższym fragmentem kodu:
z subword_count.wordcounter importuj CountWords
words = ["jak importować i ponownie używać kodu w Pythonie dla plików w różnych folderach."]
Count words (słowa)
produkcja: [14]
Podczas importu absolutnego Python przegląda folder nadrzędny (subword_count w tym przypadku) i lokalizuje plik lub moduł zawierający funkcję będącą przedmiotem zainteresowania (Count words).
Aby rozbić znaczenie powyższego importu absolutnego, subword_count to folder w katalogu twojego projektu, który zawiera plik wordcounter.py plik. Ten plik zawiera następnie rozszerzenie Count words funkcjonować.
Gdzie działa możliwość ponownego wykorzystania kodu?
Modularyzacja i ponowne użycie kodu to najlepsza praktyka dla każdego uruchomionego projektu. Jeśli piszesz OOP, co prawdopodobnie będziesz często robił, możesz zaimportować klasę z modułu lub wywołać funkcję z klasy. Jeśli klasa znajduje się w folderze, zaimportuj ją absolutnie do nowego pliku.
Ta sama praktyka dotyczy funkcji, których nie ma w obiekcie. W zależności od układu projektu możesz je importować jawnie lub absolutnie, tak jak zrobiliśmy to powyżej.
Aby w pełni wykorzystać mocne strony Pythona, będziesz chciał dowiedzieć się, jak Python współpracuje z programowaniem obiektowym (OOP).
- Programowanie
- Programowanie
- Pyton
- Programowanie obiektowe
Idowu jest pasjonatem wszystkiego, co inteligentne technologie i produktywność. W wolnym czasie bawi się kodowaniem, nudzi się szachownicą, ale uwielbia też od czasu do czasu oderwać się od rutyny. Jego pasja do wskazywania ludziom drogi wokół nowoczesnych technologii motywuje go do pisania więcej.
Zapisz się do naszego newslettera
Dołącz do naszego biuletynu, aby otrzymywać wskazówki techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w wiadomości e-mail, którą właśnie wysłaliśmy.