jesteś tutaj
171
Ponowne użycie kodu
Układ pozycyjny kontra słowa kluczowe
Jak się właśnie przekonaliśmy, funkcja
search4letters
może być wywoływana z jednym lub dwoma
argumentami, przy czym drugi argument jest opcjonalny. Jeśli podasz tylko jeden argument, argument
letters
przyjmie domyślną wartość będącą łańcuchem znakowym zawierającym samogłoski. Przyjrzyj
się raz jeszcze pokazanemu poniżej wierszowi
def
naszej funkcji.
def search4letters(phrase:str, letters:str=’aeiou’) -> set:
Interpreter Pythona zapewnia nie tylko obsługę wartości domyślnych argumentów, lecz również
umożliwia wywołanie funkcji z
argumentami ze słowami kluczowymi
. Aby zrozumieć
koncepcję, zastanów się, przyglądając się przedstawionemu poniżej przykładowi, jak do tej pory
wywoływaliśmy funkcję
search4letters
.
Wiersz def naszej funkcji
W widocznym powyżej wywołaniu dwa podane łańcuchy znakowe przypisywane, odpowiednio,
do argumentów
phrase
i
letters
na podstawie swoich pozycji. Oznacza to, że pierwszy łańcuch
zostaje przypisany do zmiennej
phrase
, drugi zaś do zmiennej
letters
. Sposób ten znany
jest pod nazwą
przypisania pozycyjnego
, ponieważ wykorzystuje się w jego przypadku kolejność
argumentów.
W języku Python możliwe jest jednak również odwoływanie się do argumentów za pomocą ich
nazw. Jeśli korzystasz z tego sposobu, kolejność występowania wartości przestaje mieć znaczenie.
Technika ta nosi nazwę
przypisania za pomocą słowa kluczowego
. Aby z niej skorzystać, podczas
wywoływania funkcji powinieneś
w dowolnej kolejności przypisać każdy z łańcuchów znakowych do
odpowiedniego argumentu wskazanego za pomocą nazwy, co zaprezentowano poniżej.
search4letters(‘galaktyka’, ‘tym’)
def search4letters(phrase:str, letters:str=’aeiou’) -> set:
search4letters(letters=’tym’, phrase=’galaktyka’)
def search4letters(phrase:str, letters:str=’aeiou’) -> set:
Obydwa przedstawione na tej stronie wywołania funkcji
search4letters
odnoszą ten sam
skutek, zwracając zbiór zawierający litery
t
oraz
y
. Choć w przypadku naszej niewielkiej
funkcji może być dość trudno dostrzec zalety korzystania z argumentów ze słowami
kluczowymi, rozwiązanie to oferuje dużą elastyczność, której znaczenie staje się jasne, gdy
wywołuje się funkcję przyjmującą bardzo wiele argumentów. Przykład tego rodzaju funkcji
(należącej do biblioteki standardowej) poznasz jeszcze przed końcem tego rozdziału.
Kolejność argumentów
nie ma znaczenia, jeśli
w wywołaniu funkcji
korzysta się ze słów
kluczowych.

Get Python Rusz głową! Wydanie II now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.