Тема 1: Работа с функциями в «Python»
ФУНКЦИЯ – это именованный фрагмент программного кода, который можно многократно вызывать на выполнение.
При создании функции на языке программирования Python необходимо применять синтаксис, соответствующий следующей структуре:
Таким образом, простую функцию, которая ничего не выполняет можно представить с помощью следующего программного кода:
ПАРАМЕТР представляет собой имя в списке параметров в первой строке определения функции. Он получает свое значение при вызове.
474.50K
Category: programmingprogramming

Работа с функциями в «Python». Тема 1

1. Тема 1: Работа с функциями в «Python»

Дисциплина:
Программирование
Тема 1: Работа с функциями
в «Python»
Преподаватель: канд. техн. наук, доцент
Кромина Людмила Александровна

2. ФУНКЦИЯ – это именованный фрагмент программного кода, который можно многократно вызывать на выполнение.

Понятие функции, ее назначение
ФУНКЦИЯ – это именованный фрагмент программного кода, который можно
многократно вызывать на выполнение.
ФУНКЦИЯ может использоваться для обработки данных, она получает на вход
значения, обрабатывает его и возвращает результат в программу. Также она может
не возвращать значение, а выводить его на экран или записывать в файл.
Применение функций позволяет разделять программу на самостоятельные, но
связанные части. Кроме того, работа с функциями предоставляет возможность
сократить программный код, поскольку функция, вызываемая по имени, занимает
всего одну строку кода вместо всех строк, которые бы пришлось прописывать для
совершения некоторой операции. Такой подход называется процедурным
программированием.

3. При создании функции на языке программирования Python необходимо применять синтаксис, соответствующий следующей структуре:

Создание функции в Python
При создании функции на языке программирования Python необходимо применять
синтаксис, соответствующий следующей структуре:
1) указывается служебное слово def;
2) прописывается имя функции (имя должно быть написано буквами и цифрами латинского
алфавита, символами нижнего подчеркивания, и не должно начинаться с цифры, кроме того, в
качестве имени функции можно выбирать любой идентификатор за исключением ключевых
слов языка Python и существующих имен встроенных функций);
3) после имени функции указываются круглые скобки, в которых (при необходимости)
прописываются параметры или аргументы функции;
4) ставится двоеточие;
5) прописывается весь программный код, который необходимо указать в виде функции (тело
функции), следует помнить о том, что тело функции, аналогично телу условия или цикла,
выделяется четырьмя пробелами.

4. Таким образом, простую функцию, которая ничего не выполняет можно представить с помощью следующего программного кода:

Создание функции в Python
Таким образом, простую функцию, которая ничего не выполняет можно представить
с помощью следующего программного кода:
Оператор pass представляет собой точку остановки, что
равносильно отсутствию операции. Его применение бывает
необходимо в случаях, где программный код пока отсутствует,
однако его появление планируется. Кроме того, его применяют
при отладке программы, когда pass имитирует точку остановки.
Функция,
позволяющая
выводить экран
строку «это моя
первая функция»:
Возврат значения функцией осуществляется с
помощью ключевого слова return, после
которого указывается возвращаемое значение.

5. ПАРАМЕТР представляет собой имя в списке параметров в первой строке определения функции. Он получает свое значение при вызове.

Аргументы и параметры
ПАРАМЕТР представляет собой имя в списке параметров в первой строке
определения
функции.
Он
получает
свое
значение
при
вызове.
АРГУМЕНТ – это реальное значение или ссылка на него, переданное функции при
вызове.
В функции можно использовать
НЕОГРАНИЧЕННОЕ
КОЛИЧЕСТВО ПАРАМЕТРОВ, но
КОЛИЧЕСТВО АРГУМЕНТОВ
ДОЛЖНО ТОЧНО
СООТВЕТСТВОВАТЬ
ПАРАМЕТРАМ.
Также Python предоставляет
возможность определять значения по
умолчанию, которые можно задавать с
помощью аргументов-ключевых слов.
Здесь a и b являются ПАРАМЕТРАМИ, а 2 и 7 –
АРГУМЕНТАМИ.

6.

Аргументы и параметры
ПРИ ВЫЗОВЕ ФУНКЦИИ АРГУМЕНТЫ МОЖНО ПЕРЕДАВАТЬ ДВУМЯ
СПОСОБАМИ:
1) как позиционные – передаются в том же порядке, в котором они определены, при
создании функции, так, порядок передачи аргументов, определяет какое значение
получит каждый;
2) как ключевые – передаются с указанием имени аргумента и его значения,
аргументы могут быть указаны в любом порядке, так как их имя указывается явно.
Позиционные и ключевые аргументы могут быть смешаны, при вызове функции. Таким
образом, можно использовать оба способа, при передаче аргументов одной и той же функции.
ПРИ ЭТОМ, СНАЧАЛА ДОЛЖНЫ ИДТИ ПОЗИЦИОННЫЕ АРГУМЕНТЫ, А ТОЛЬКО
ПОТОМ – КЛЮЧЕВЫЕ.
При описании функции в PYTHON АРГУМЕНТЫ, КОТОРЫМ ЗАДАЮТСЯ НАЧАЛЬНЫЕ
ЗНАЧЕНИЯ, ЯВЛЯЮТСЯ НЕОБЯЗАТЕЛЬНЫМИ.
При этом СНАЧАЛА НЕОБХОДИМО ОПИСЫВАТЬ ОБЯЗАТЕЛЬНЫЕ параметры и
только после них необязательные.
При вызове функции нет необходимости указывать значения необязательных параметров:

7.

Аргументы и параметры
ПРИМЕР:
Если нужно изменить
значение аргумента, не
меняя начальные значения
других аргументов, то
следует обратиться к нему
по ключу, например:
Кроме того, значения
аргументов при вызове
функции можно записывать
следующим образом:

8.

Аргументы и параметры
Следует отметить, что если значение какого-либо аргумента в коде
программы не будет определено, то программа выдаст ошибку:
Рассмотрим пример
функции, позволяющей
находить площадь круга:
Аналогичного результата можно достичь,
подключив внутри функции модуль math:

9.

Аргументы и параметры
Иногда возникает необходимость функции, принимающей разное количество
аргументов. Разумеется это может быть реализовано при помощи передачи
списка или массива, однако Python позволяет использоваться более удобный
подход (также с использованием списка).
Для того чтобы функция могла принять
переменное количество аргументов, перед
именем аргумента ставится символ «*».
Переданные аргументы записываются в
кортеж, имя которого соответствует имени
аргумента:

10.

Локальные и глобальные переменные в
функциях Python
В любом языке программирования существует понятие области видимости, с
помощью которой в одном модуле можно использовать одно и то же имя
переменной несколько раз.
Следует отметить, что области видимости также делают программу более
безопасной, не позволяя получить доступ к важным переменным.
В ЯЗЫКЕ ПРОГРАММИРОВАНИЯ PYTHON СУЩЕСТВУЕТ ДВЕ ОБЛАСТИ
ВИДИМОСТИ:
1. ГЛОБАЛЬНАЯ – переменные объявляются непосредственно внутри модуля и
доступны из любой точки программы;
2. ЛОКАЛЬНАЯ – переменные объявляются в теле функции и доступны только внутри
неё.

11.

Локальные и глобальные переменные в
функциях Python
Важным моментом является факт того, что из локальной области видимости можно
обратиться к переменным, находящимся в глобальной области видимости, но не наоборот.
При этом, чтение глобальной переменной можно осуществить, просто обратившись к ней.
Для осуществления записи следует указывать ключевое слово «global», которое
свидетельствует о том, что работа выполняется с глобальной переменной, например:

12.

Работа с функциями
При работе с функциями существует ВОЗМОЖНОСТЬ ПРИМЕНЕНИЯ
УСЛОВНЫХ ОПЕРАТОРОВ:

13.

Работа с функциями
При работе с функциями существует ВОЗМОЖНОСТЬ ПРИМЕНЕНИЯ ЦИКЛОВ:

14.

Рекурсия
Процесс, когда функция вызывает саму себя, называется РЕКУРСИЕЙ, а сама
функция – РЕКУРСИВНОЙ.
Рекурсивные функции являются мощным механизмом в программировании. К сожалению, они не
всегда эффективны. Также часто использование рекурсии приводит к ошибкам. Наиболее
распространенная из таких ошибок – бесконечная рекурсия, когда цепочка вызовов функций
никогда не завершается и продолжается, пока не кончится свободная память в компьютере.

15.

Анонимные функции
Это особый вид функций, которые объявляются с помощью ключевого слова
lambda вместо def:
Анонимные или Lambda-функции принимают любое количество аргументов, но не могут
содержать несколько выражений и всегда возвращают только одно значение.
В программировании на Python можно обойтись без анонимных функций, которые по сути
являются обычными, но без имени и с ограничением в одно выражение. Однако их использование
в нужных местах упрощает написание и восприятие кода.
Lambda-функция – это короткая однострочная функция, которой даже не нужно имя давать.
ТАКИЕ ВЫРАЖЕНИЯ СОДЕРЖАТ ЛИШЬ ОДНУ ИНСТРУКЦИЮ, ПОЭТОМУ,
НАПРИМЕР: IF, FOR И WHILE ИСПОЛЬЗОВАТЬ НЕЛЬЗЯ. ИХ ТАКЖЕ МОЖНО
ПРИСВАИВАТЬ ПЕРЕМЕННЫМ:
С помощью type() можно проверить тип:
В Lambda-функции не
используется ключевое слово
return. Поскольку результат
работы возвращается и без
этого.
Рассмотрим еще один пример применения Lambda-функции:

16.

Основные встроенные функции в Python
PYTHON ПОЗВОЛЯЕТ ПРИМЕНЯТЬ ВСТРОЕННЫЕ ФУНКЦИИ, ТАК
ОСНОВНЫМИ ВСТРОЕННЫМИ ФУНКЦИЯМИ ЯВЛЯЮТСЯ СЛЕДУЮЩИЕ:
1) print() – выводит объекты на экран или в файл;
2) len() – возвращает количество элементов, содержащихся в кортеже, словаре или
списке.
3) str() – преобразует переданный в качестве аргумента объект в строку;
4) int() – преобразует объект в целое число, здесь важно помнить о том, что если
передать в качестве аргумента строку, программа выведет ошибку, целое число –
выведется без изменений, а у числа с плавающей точкой – отбросится дробная часть;
5) range() – возвращает диапазон значений, в основном используется в условии цикла
for;
6) bool() – приводит объект в логическому типу, например, 0 – False, а 1 – True;
7) sum() – возвращает сумму переданных элементов;
8) min() и max() – возвращают минимальный и максимальный элемент из переданных;
9) type() – возвращает тип объекта, обычно используется при отладке кода;
10) dir() – возвращает список имён, доступных в локальной области видимости, или
атрибуты объекта, переданного в качестве аргумента.
English     Русский Rules