Слайд 2Пользовательские функции
Создание функций. Для чего это вообще может потребоваться?
Функции в основном нужны
![Пользовательские функции Создание функций. Для чего это вообще может потребоваться? Функции в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-1.jpg)
для того, чтобы избегать дублирования кода. Чтобы многократно использовать тот или иной блок кода.
Слайд 3Пользовательские функции
Теперь сделаем нашу функцию более полезной. Для этого передадим ей параметр.
Конечно
![Пользовательские функции Теперь сделаем нашу функцию более полезной. Для этого передадим ей](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-2.jpg)
же, называем наш параметр как-либо осмысленно.
Слайд 4Пользовательские функции
Соответственно, может добавить второй параметр. Например, «word». Выглядеть это будет следующим
![Пользовательские функции Соответственно, может добавить второй параметр. Например, «word». Выглядеть это будет](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-3.jpg)
образом, и, разумеется, его надо будет указать на вызове функции.
Слайд 5Пользовательские функции
Например, при написании функции «def sum» - интерпретатор питона подчеркнёт нам
![Пользовательские функции Например, при написании функции «def sum» - интерпретатор питона подчеркнёт](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-4.jpg)
слово sum.
Всё дело в том, что функции в питоне работают несколько иначе, чем функции, например, в том же php.
В php, если мы создадим функцию или если в php встроена какая-то функция, и мы попытаемся создать аналогичную функцию с таким же именем, то php нам это сделать банально не позволит.
Он скажет, что такая функция уже задекларирована, определена и мы не можем переопределять функции.
Слайд 6Пользовательские функции
В питоне… А что в питоне…
В питоне это возможно. Но
![Пользовательские функции В питоне… А что в питоне… В питоне это возможно.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-5.jpg)
делать так не советуют. Более того, с функциями, которые уже встроены в питоне. Как раз такая, как функция sum.
Слайд 7Пользовательские функции
Разумеется, если я всё таки такую функцию заюзаю, то она создастся
![Пользовательские функции Разумеется, если я всё таки такую функцию заюзаю, то она](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-6.jpg)
и будет использоваться. Но опять таки такая тема не рекомендуется к использованию вообще ни разу.
Например потому что встроенную функцию sum уже использовать нельзя будет, так как мы её банально переопределили ☺
Поэтому в подобных случаях называть функции стоит как-нибудь иначе, например: «get_sum», как вариант.
Слайд 8Пользовательские функции
Пусть наша сумма будет принимать два аргумента: «a» и «b».
Опять таки,
![Пользовательские функции Пусть наша сумма будет принимать два аргумента: «a» и «b».](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-7.jpg)
называть можно как угодно и как вы захотите. Главное, чтобы в теле функции вы должны к ним обращаться точно так же, как определили в виде аргументов в начале.
При вызове функции мы, соответственно, можем передать аргументы. (1, 3), например.
Ну либо же можно просто задать x и y со значениями, затем обратиться к функции, указав x и y в качестве принимаемых аргументов.
Слайд 9Пользовательские функции
Пример:
![Пользовательские функции Пример:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-8.jpg)
Слайд 10Пользовательские функции
А если попробовать так?
В чём ошибка и как сделать так, чтобы
![Пользовательские функции А если попробовать так? В чём ошибка и как сделать так, чтобы выводило.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-9.jpg)
выводило.
Слайд 11Пользовательские функции
Почему стоит возвращать результат?
Потому что нам не всегда нужно его печатать.
![Пользовательские функции Почему стоит возвращать результат? Потому что нам не всегда нужно](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-10.jpg)
Вполне вероятно, что мы можем делать какие-нибудь промежуточные вычисления и желаем использовать в дальнейших вычислениях.
Слайд 12Пользовательские функции
На что еще стоит обратить внимание?
Потому что функция всегда
что-то
![Пользовательские функции На что еще стоит обратить внимание? Потому что функция всегда](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1176094/slide-11.jpg)
неявно
возвращает.
Когда мы не используем print() – этот результат подавляется, он не выводится.
Нюанс помнить – если ваша функция что-то печатает, то печатать дополнительно ничего не нужно.