
#12 – Функции (def, lambda)
Видеоурок
Функции можно назвать небольшими подпрограммами, куда можно вынести повторяющийся код и обращаться к нему, когда это будет нужно. Функции значительно облегчают построение программ, так как нам не надо копировать однотипный код множество раз, а можно просто воспользоваться одной общей функцией.
Многие путают функции и методы и не понимают отличий между ними. На самом деле отличий нет, так как что методы, что функции являются одним и тем же. Функции что записаны вне классов называют функциями, а функции что записаны внутри классов называются методами.
Точно такая же ситуация обстоит с переменным. В классах переменные называются полями, а вне классов - переменными.
В Python функции создаются при помощи ключевого слова def
. Каждая функция может иметь какие-либо параметры или же не иметь их вовсе. Функции способны что-либо возвращать в ходе выполнения кода, если это требуется.
def some_test(): # Функция без параметров
x = 23
return x # Функция возвращает что-либо
def some_test_2(a, b, c): # Функция с 3 параметрами
return a * b * c # Функция возвращает результат умножение чисел
def print_something(word, prefix): # Функция с 2 параметрами
print (prefix, "-", word)
pass # Функция ничего не возвращает
Когда функция ничего не возвращает, то необходимо прописывать ключевое слово pass
.
Функции могут возвращать другие функции, тем самым вызывая их. Чтобы обратиться к функции необходимо прописать её названи и передать параметры, если таковы имеются:
res = some_test_2 (2, 67, 12)
В примере выше результат выполнения функции будет помещен в переменную res
. Далее с переменной можно работать как с обычным значением в программе.
Анонимные функции
Если функция не должна выполнять большой объем кода, то можно воспользоваться анонимной функцией. Для этого потребуется функция lambda
.
Пример создания «lambda» функции:
multiple = lambda a, b: a * b
multiple(7, 12)
Подобная функция не имеет названия, но её можно присвоить к переменной, которую в дальнейшем необходимо вызывать как обычную функцию.
Исходный код
Весь код будет доступен после подписки на проект!
Задание к уроку
Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям
Большое задание по курсу
Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца
Также стоит посмотреть