Найти в Дзене
Django | Python

9. Функции в Python3.

Функции очень часто используются в программировании. В предыдущих статьях мы уже встречались с встроенными функциями такими как ( print(), input(), len() и т.д. ). Попробуем разобраться что такое функции и как написать свою функцию.

Что такое функция?

  • Часть кода, для которого мы (даем) присваиваем имя.
  • Написав один раз, можно вызывать из разных мест программы.
  • Функции позволяют структурировать код, разбив его на отдельные действия.
  • Функции делают код более читабельным и упрощают поиск ошибок.

Функция создается при помощи ключевого слова def, далее пишется название (имя) функции. Название функции пишем по тем же правилам что и название переменных (в названии используются маленькие латинские буквы, подчеркивания, цифры). После названия идут круглые скобки и двоеточие.

Пример_1: Опишем функцию которая будет считать процент скидки от цены.

Описываем функцию — то что она будет делать.
Описываем функцию — то что она будет делать.

Описав функцию def price_sale(price, percent): , мы можем использовать вычисления скидки для разных значений в разных местах нашего кода.

Передаем функции разные значения (цену и процент скидки)
Передаем функции разные значения (цену и процент скидки)

Пример_2: Усложним и улучшим нашу функцию - сделаем более функциональной. Предположим у нас имеется перечень товаров для которых необходимо посчитать процент скидки и вывести на экран цены с учетом скидки для каждого товара. Создадим словарь price_goods {} с наименованием товара и его ценой, а процент скидки мы будем получать от пользователя в переменную percent_sale. Также для исключения неправильно введенных данных пользователем, добавим в наш код проверку.

Проверять будем:

  • Скидка не может быть больше 100 процентов, проверять будем с помощью условного оператора if.
  • Процент скидки не может быть отрицательным, исключать (проверять) будем с помощью встроенной функцией abs().
  • Цена товара не может быть отрицательной, исключать (проверять) будем с помощью встроенной функцией abs().
-3

Для того чтобы из функции вернуть значения (в нашем случае цены) и продолжить работу с ними, используется встроенная функция return.

Пример_3: Получаем новые цены с учетом скидки и перезаписываем — обновляем цены в словаре price_goods {}.

-4

Кроме обязательных позиционных аргументов, можем создавать необязательные именованные аргументы. У них есть значение по умолчанию.

Пример_4: Добавим в функцию необязательный именованный аргумент с максимальной скидкой 30%

-5

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

Пример_5: Изменим максимальную скидку, передав новое значение.

-6

Предыдущие статьи по изучению языка программирования Python3.

8. Цикл for и цикл while в Python3.

7. Условный оператор if в Python3.

6. Словари и работа с ними в Python3.

5. Основа работы со списками в Python3.

4. Типы данных в Python3.

3. Переменные в языке Python 3 и для чего они нужны.

2. Python 3, PyCharm и их установка на компьютер.

1. Знакомство и работа в командной строке.