Rozdział 13 · Automatyzacja z funkcjami
Funkcje jak taśma produkcyjna
Kilka małych funkcji, każda z wyraźnym wejściem i wyjściem, może wykonać duże zadanie razem—tak dobre jak jeden długi skrypt, ale znacznie wyraźniej.
Wynikiem jednej funkcji jest dane wejściowe dla następnej
konvejer.py
clean = normalize_text(input_text)
words = split_words(clean)
counts = count_words(words)
To technika architektoniczna, a nie tylko wygoda
Podział na takie etapy — potężny sposób na organizację programu: każda funkcja rozwiązuje jedno zrozumiałe zadanie, każda ma jasny wejście i wyjście, a etapy można testować oddzielnie (§13.24).
Graf wywołań (call graph)
Kiedy funkcje wywołują inne funkcje, powstałą strukturę można przedstawić jako drzewo — wykres wywołań:
MAIN
normalize_text
analyze_text
count_words
count_unique
show_report
Do tego pomysłu wrócimy w §13.22, gdy przerobimy rzeczywiste wersje rozdziału 12 w podobna struktura.
Praktyka: rurociąg funkcji
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji