86.33K
Category: programmingprogramming

Функции. Программирование на языке 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.

Использование return
def 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.

Значение None
def 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 и названием функции должен быть
один пробел
• Между названием функции и скобкой, в
которой указываются аргументы, не должно
быть пробела, как и после закрывающей
скобки
• Отступ в теле функции равен четырем
пробелам
• Определение функции должно быть отделено
от остального кода двумя пустыми строками
сверху и снизу
English     Русский Rules