Similar presentations:
Функции. Программирование на языке Python
1.
Программирование на языкеPython
Тема 1: Функции
2.
Что такое функция?Примеры из жизни:
• Сходить в магазин за продуктами
• Приготовить еду
• Собрать портфель в школу
Мы выполняем функции каждые день!
3.
Функции в программированииНужны для:
• Повторного использования кода для
различных данных
• Уменьшения количества ошибок и
упрощения отладки за счет повторного
использования
• Повышения уровня абстракции
• Структурирования кода
4.
Наша первая функцияdef do_smth():
print('Я функция,')
print('которая пишет в консоль')
print('несколько строк')
5.
Синтаксис определения функцииdef <название_функции>():
<выполняемый_код>
6.
Вызов нашей функцииdef do_smth(): # определение фукнции
print('Я функция,')
print('которая пишет в консоль')
print('несколько строк')
do_smth() # вызов функции
7.
Аргументы функцииdef print_average(a, b):
print('Среднее между', a, 'и', b, '=', (a + b) / 2)
print_average(2, 5)
print_average(2.5, -3.8)
8.
Локальные переменныеdef launch_rocket(rocket_name):
time_to_launch = 5
for i in range(time_to_launch, 0, -1):
print('Осталось', i, 'секунд до запуска..')
print('Ракета', rocket_name, 'запущена!')
launch_rocket('Протон')
launch_rocket('Восток')
9.
Локальные переменные• Переменные, объявленные внутри функции
называются локальными по отношению к
данной функции
• Они недоступны вне функции
• Локальные переменные “затеняют”
глобальные
• Подробнее о видах переменных и об их
области видимости будем говорить на
следующих занятиях
10.
Возвращение значенийВстроенные функции, возвращающие значения: len,
int, str и другие
Напишем свою:
def double_it(number):
return number * 2
y = double_it(5)
print(y)
11.
Использование returndef strange_func(word):
if len(word) < 5:
return word * 2
return word
print('Что-то после return')
print(strange_func('Привет'))
print(strange_func('Хей!'))
12.
Использование return• В функции может быть 0, 1 или более
вызовов return
• После выполнения инструкции return
происходит выход из функции
• Функции, в которых явно не вызывается
return, возвращают специальное значение None
13.
Значение Nonedef func(a, b):
print('Я ничего не возвращаю, но вывожу:', a - b)
result = func(5, 1)
print('Значение result:', result)
14.
Возвращение нескольких значенийdef get_min_max_sum(numbers):
return (min(numbers), max(numbers), sum(numbers))
stats = get_min_max_sum([1, 5, 2, -10, 7])
mn, mx, sm = stats # распаковка кортежа по переменным
print('Кортеж:', stats)
print('Распакованный кортеж: ', mn, mx, sm)
print() # перенос строки в консоли
mn1, mx1, sm1 = get_min_max_sum([0, 2, 4]) # сразу распаковываем результат
print(mn1, mx1, sm1)
15.
PEP8!• Между def и названием функции должен быть
один пробел
• Между названием функции и скобкой, в
которой указываются аргументы, не должно
быть пробела, как и после закрывающей
скобки
• Отступ в теле функции равен четырем
пробелам
• Определение функции должно быть отделено
от остального кода двумя пустыми строками
сверху и снизу