Книга: Введение в Python
Рецепт создания функции в Python
Рецепт создания функции в Python
Существует следующий алгоритм - рекомендация по созданию функции в Python. Например, мы создаем функцию вычисления площади прямоугольника.
1. Начинать следует с примеров того, что делает функция, и подобрать подходящее название. В нашем случае это будет выглядеть так:
| # На данном этапе мы еще не указываем имена переменных
| def rectangle_area_finder( ):
| """
| >>> rectangle_area_finder(3, 5)
| 15
| >>> rectangle_area_finder(17.2, 6)
| 103.2
| """
2. Указать типы данных, которые принимает функция и тип данных, который она возвращает
| # функция принимает два числа, а возвращает одно
| def rectangle_area_finder( ):
| """
| (num, num) -> num
| >>> rectangle_area_finder(3, 5)
| 15
| >>> rectangle_area_finder(17.2, 6)
| 103.2
| """
3. Подобрать подходящие названия для переменных
| # Поскольку это математическая функция нам вполне подойдут имена a и b
| def rectangle_area_finder(a, b):
| """
| (num, num) -> num
| >>> rectangle_area_finder(3, 5)
| 15
| >>> rectangle_area_finder(17.2, 6)
| 103.2
| """
4. Написать краткое, но содержательное описание функции
| def rectangle_area_finder(a, b):
| """
| (num, num) -> num
| Returns an area of a rectangle with given sides a and b.
| >>> rectangle_area_finder(3, 5)
| 15
| >>> rectangle_area_finder(17.2, 6)
| 103.2
| """
5. Написать собственно тело функции
| def rectangle_area_finder(a, b):
| """
| (num, num) -> num
| Returns an area of a rectangle with given sides a and b.
| >>> rectangle_area_finder(3, 5)
| 15
| >>> rectangle_area_finder(17.2, 6)
| 103.2
| """
| return a * b
6. Функция готова! Осталось вызвать ее с указанными в примерах аргументами
Как видно, при вызове команды help() с именем нашей функции в качестве аргумента мы получаем написанную нами документацию.
Сопровождайте ваши функции качественной документацией и программисты, которые будут работать с вашим кодом после вас будут вам благодарны.
- Аргументы функции в Python
- Функции в Python
- Создание функции
- Вызов функции
- 3. Функции
- Новые функции API для работы с Blob и массивами
- Язык программирования Python
- 2. Пример создания базового отношения в записи на псевдокоде
- 5.5 Технологии создания моментальных снимков тома
- Математические функции
- Размытые функции
- 7.3. Финансовые функции