#12 - Функции (def, lambda, return)

#12 - Функции (def, lambda, return)

В этом уроке мы с вами затронем тему функций в языке Python. Мы разберемся с ключевыми понятиями, такими как: def, lambda и return. Мы научимся создавать функции, вызывать их, а также рассмотрим многие важные моменты.

Видеоурок

Функции можно назвать небольшими подпрограммами, куда можно вынести повторяющийся код и обращаться к нему, когда это будет нужно. Функции значительно облегчают построение программ, так как нам не надо копировать однотипный код множество раз, а можно просто воспользоваться одной общей функцией.

В 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. Пример создания такой функции:
multiple = lambda a, b: a * b
multiple(7, 12)

Такая функция не имеет названия, но её можно присвоить к переменной, которую в дальнейшем необходимо вызывать как обычную функцию.

Исходный код

Примеры функций
def func (**args):
	return args

print (func (short='dict', longer='dictionary'))

add = lambda x, y: x * y
print (add (2, 5))
print (add ('q', 5))

print ((lambda x, y: x * y)(2, 6))

fun = lambda *args: args
print (fun (2, 56, 78.56))

Онлайн редактор кода

Загрузка...

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца

Также стоит посмотреть

Создание игры на Python 3 с PyGame
5 уроков
Уроки Python Django / Создание сайта
12 уроков
Изучение Python до профи / Основы, Django, TKinter