Похожие презентации:
Функции
1. Функции
ФУНКЦИИ2. Упрощение кода
УПРОЩЕНИЕ КОДАВ предыдущих уроках мы использовали встроенные
функции print(), input(), int(), str(), len() и другие. Пришло время писать
собственные.
Можно рисовать фигуры из символов с помощью команды print().
Например, так:
1| # прямоугольник 5 на 15 плюсов
2| print('+++++++++++++++')
3| print('+++++++++++++++')
4| print('+++++++++++++++')
5| print('+++++++++++++++')
6| print('+++++++++++++++')
3. Упрощение кода
УПРОЩЕНИЕ КОДАДалее мы изучили оператор умножения строки на число, поэтому
написали бы программу покороче.
1| print('+' * 15)
2| print('+' * 15)
3| print('+' * 15)
4| print('+' * 15)
5| print('+' * 15)
А с циклами наш код стал бы ещё короче:
1| for _ in range(5):
2|
print('+' * 15)
Программа в две строки удобная, но не всё так просто.
4. Повторение действий
ПОВТОРЕНИЕ ДЕЙСТВИЙПредставим, что таких прямоугольников нужно изобразить не один, а,
например, три. Получится такой код:
1| for _ in range(5):
2|
print('+' * 15)
3| print()
4| for _ in range(5):
5|
print('+' * 15)
6| print()
7| for _ in range(5):
8|
print('+' * 15)
Части кода здесь повторяются. И если понадобится, например,
изменить размеры прямоугольника, придётся делать это в трёх местах.
Тут на помощь приходят функции.
5. Создание функции
СОЗДАНИЕ ФУНКЦИИТакой код создаёт функцию draw_rectangle():
1| def draw_rectangle():
2|
for _ in range(5):
3|
print('+' * 15)
Чтобы увидеть результат работы функции, нужно её вызвать. Для этого
пишут её название — вот так:
1| draw_rectangle()
Теперь изобразим три прямоугольника, разделённых пустыми строками:
1| draw_rectangle()
2| print() # разделитель
3| draw_rectangle()
4| print() # разделитель
5| draw_rectangle()
Код стал короче. А главное, если потребуются иные размеры
прямоугольника, достаточно будет изменить только
функцию draw_rectangle().
6. Именование функций
ИМЕНОВАНИЕ ФУНКЦИЙУ нашей функции было понятное название draw_rectangle() — от
английского draw — рисовать, rectangle — прямоугольник.
Имя функции должно быть достаточно описательным, чтобы
любой, кто будет читать твой код, мог догадаться, что именно
функция делает. Называть функции в Python нужно по тем же
правилам, что и переменные:
• В имени функции используются только латинские буквы a-z, A-Z,
цифры и символ нижнего подчёркивания (_).
• Имя функции не может начинаться с цифры.
• Имя функции по возможности должно отражать её значение.
• Символы верхнего и нижнего регистра различаются.
Помни:
Python — регистрочувствительный язык. Называть функции и
переменные принято с помощью
стиля lower_case_with_underscores (слова из букв нижнего
регистра с подчёркиваниями).
7. Примеры названий функций
ПРИМЕРЫ НАЗВАНИЙ ФУНКЦИЙПоскольку функции выполняют действия, в их именах лучше использовать
глаголы. Например, так:
Что делает функция
Как назвать функцию
Рисует треугольник
draw_triangle()
Генерирует пароль
generate_password()
Вычисляет среднюю скорость
calculate_average_speed()
Корректные названия
Какие имена функций заданы верно?
1.
10_draw_lines()
2.
draw_10_lines()
3.
draw_lines_10_()
4.
_draw_lines_10()
8. Объявление функции
ОБЪЯВЛЕНИЕ ФУНКЦИИФункция — это отдельная, независимая часть программы, выполняющая
определённую задачу.
Функции объявляются с помощью ключевого слова def (от
английского define — определять). За ним идут название функции,
круглые скобки (), и двоеточие :.
Верхняя строка объявления функции называется заголовком функции. Со
следующей строки начинается блок кода — тело функции. Этот набор
инструкций выполняется каждый раз, когда вызывается функция. Обрати
внимание, что каждая строка в теле функции выделена отступом.
9.
Корректное объявлениеКакая функция объявлена верно?
1.
hello_world()
2.
def hello_world()
3.
def hello_world():
print('Привет, мир!')
4.
def hello_world():
print('Привет, мир!')
10. Вызов функции
ВЫЗОВ ФУНКЦИИЕсли ты правильно объявил функцию hello_world(), но она ничего не
делает, значит, ты забыл вызвать функцию в программе. Помни, что
объявление функции не вызывает её.
1| # объявление функции
2| def print_message():
3|
print('Меня зовут Никита.')
4|
print('Я работаю в компании «Прогресс». ')
5|
6| # вызов функции
7| print_message()
11. Вызов функции
ВЫЗОВ ФУНКЦИИПодумаем, что пошло не так в этом примере.
Такой код:
1| # вызов функции
2| print_message()
3|
4| # объявление функции
5| def print_message():
6|
print('Меня зовут Никита.')
7|
print('Я работаю в компании «Прогресс».')
приведёт к ошибке:
NameError: name 'print_message' is not defined
Это произошло, потому что функция вызвана до её объявления.
Функцию вызывают только после её объявления!
12. Отступы в теле функции
ОТСТУПЫ В ТЕЛЕ ФУНКЦИИСтажёр попробовал объявить новую функцию functions_info(), но у него выходит
ошибка. Вот его программа:
1| def functions_info():
2|
рrint('Функция — отдельная независимая часть программы.')
3| рrint('Функции объявляются с помощью ключевого слова def.')
4| рrint('Затем идут название функции, круглые скобки (), и двоеточие :.')
Эта ошибка связана с отступами. При объявлении функции убедись, что
каждая строка тела функции начинается с одинакового количества пробелов.
Вот правильный код:
1| def functions_info():
2|
рrint('Функция — отдельная независимая часть программы.')
3|
рrint('Функции объявляются с помощью ключевого слова def.')
4|
рrint('Затем идут название функции, круглые скобки (), и двоеточие :.')
13. Ключевое слово pass
КЛЮЧЕВОЕ СЛОВО PASSИногда бывает нужно объявить функцию, которая ничего не
делает. Для это есть оператор-заглушка pass.
1| def do_nothing():
2|
pass
Мы объявили функцию do_nothing(). Её тело содержит одну
строку кода, которая ничего не делает. Эта функция не бесполезна
— обычно программисты ставят заглушки в тех местах, где код
только планируется. Это удобно!
14. Задачи:
ЗАДАЧИ:1. Выведите с помощью функции mesto_ychebi() на экран текст
«Здравствуйте, меня зовут Андрей», «Я учусь в АКВТ, IT - куб»
2. Создать функцию calc(a, b, operation). Описание входных параметров:
Первое число
Второе число
Действие над ними:
• + Сложить
• - Вычесть
• * Умножить
• / Разделить
• В остальных случаях функция должна возвращать "Операция не
поддерживается«
3. Объявите любую функцию и поставьте оператор заглушку.
4. Напишите функцию hello_friend, принимающую в качестве аргументов
имя и фамилию пользователя и возвращающую строку в формате «Привет,
{name} {surname}!». Вызовите функцию и выведите результат вызова на
экран.
Программирование