Функция – это составная инструкция, принимающая данные, выполняющая действия и возвращающая результат. Главное преимущество функций – многократное использование кода, упрощающее работу программиста.
Определение функций в Python
Для определения функции используется ключевое слово def, за которым следует имя функции, параметры в скобках, двоеточие и, с отступом, тело функции (код, который она выполняет). Правила создания имен функций такие же, как для переменных.
def имя_функции(параметр1, параметр2):
# Тело функции
pass
Примеры функций
Функция без параметров
Создадим функцию hello, выводящую фразу «Привет, мир!»:
def hello():
print("Привет, мир!")
hello() # Вызов функции
Функция объявляется (def hello(): …), а затем вызывается (hello()). Без вызова функция не выполнится.
Функция с параметрами
Функции могут принимать параметры, позволяя выполнять вычисления и работать с данными. Например, функция, вычисляющая сумму двух чисел:
def sum_two(a, b):
return a + b
x = int(input("Введите первое число: "))
y = int(input("Введите второе число: "))
print(sum_two(x, y))
Функция sum_two принимает два параметра (a, b), суммирует их и возвращает результат с помощью оператора return. Ввод чисел осуществляется с помощью input(), а вывод результата – с помощью print(). Преобразование ввода в числовой тип выполняется с помощью int().
Моделирование математической функции
Перепишем математическую функцию f(x) = 2 * x — 2 на Python:
def f(x):
return 2 * x - 2
print(f(2)) # Вывод: 2
Обязательные и необязательные параметры
Функции могут иметь обязательные и необязательные параметры. Обязательные параметры должны быть указаны при вызове функции. Необязательные параметры задаются с значениями по умолчанию:
def func(a, b=2):
return a + b
print(func(4)) # Вывод: 6 (b принимает значение по умолчанию)
print(func(4, 5)) # Вывод: 9 (b принимает переданное значение)
Область видимости переменных
Переменные имеют область видимости. Локальные переменные видимы только внутри функции, глобальные – во всей программе. Оператор global позволяет изменять глобальные переменные внутри функции:
a = 45
b = 5
def my_func(a, b):
print(a, b)
my_func(a,b)
def my_func2():
global a
a = a + 2
print(a)
my_func2()
print(a) # a изменена внутри my_func2
В этом уроке рассмотрены основы работы с функциями в Python: определение функций, параметры, оператор return, область видимости переменных. Функции – мощный инструмент для создания модульного, понятного и многократно используемого кода.