Українська
Підсумки
Висновки
Функція об’єднує ім’я, параметри, контракт і результат. Спосіб передавання аргументу визначається її підписом; зміна спільного об’єкта відрізняється від переприсвоєння локального імені. Замикання зберігає стан у зовнішній функції. Рекурсія придатна, коли задача природно розкладається на менші, але потребує бази, обмежень і контролю повторних обчислень. Анотації роблять ці домовленості видимими для читача й інструментів.
Питання для самоперевірки
- Чим параметр відрізняється від аргументу?
- Коли виконується тіло
def, а коли значення за замовчуванням? - Чим відрізняються
return,printі неявнеNone? - Що насправді повертає
return low, high? - Як працюють маркери
/і*? - Чим збирання аргументів відрізняється від розпакування?
- Чому список за замовчуванням зберігає зміни між викликами?
- Чому переприсвоєння параметра не замінює список у виклику?
- Який порядок пошуку імен LEGB?
- Коли потрібні
globalіnonlocal? - Які дані зберігає замикання?
- Що доводить завершення рекурсії?
- Чому кеш Фібоначчі не усуває глибину стека?
- Як показати функцію як аргумент в анотації?
- Чим відкладені анотації відрізняються від рядкових?
Корисні посилання
- Функції й параметри: https://docs.python.org/3.14/tutorial/controlflow.html.
- Області видимості: https://docs.python.org/3.14/reference/executionmodel.html.
- Типізація: https://docs.python.org/3.14/library/typing.html.
- Відкладені анотації: https://docs.python.org/3.14/library/annotationlib.html.