Слайд 1
⚙️ Функции с параметрами
В предыдущем уроке мы создали функцию draw_box(), которая выводила звёздный прямоугольник
фиксированного размера 5×7:
def draw_box():
for i in range(5):
print('*' * 7)
Однако гораздо удобнее, если функция может рисовать прямоугольники разных размеров. Для этого функции используют параметры.
📘 Объявление функции с параметрами
Функция с параметрами объявляется так же, как и обычная, только с указанием переменных в скобках:
def имя_функции(параметры):
блок кода
Пример:
def draw_box(height, width): # функция принимает два параметра
for i in range(height):
print('*' * width)
Теперь при вызове функции нужно указать значения параметров.
Например, draw_box(5, 7) нарисует прямоугольник 5×7:
*******
*******
*******
*******
*******
А draw_box(10, 15) нарисует прямоугольник 10×15:
***************
***************
***************
***************
***************
***************
***************
***************
***************
***************
📦 Использование переменных как аргументов
n = 3
m = 9
draw_box(n, m)
Вывод:
*********
*********
*********
💡 Параметры позволяют писать универсальные функции,
которые можно вызывать с любыми значениями, не меняя саму функцию.
🧩 Ещё примеры
Функция, которая выводит слово Hello указанное количество раз:
def print_hello(n):
print('Hello' * n)
print_hello(3)
print_hello(5)
times = 2
print_hello(times)
Результат:
HelloHelloHello
HelloHelloHelloHelloHello
HelloHello
Более универсальный вариант — функция, принимающая текст и количество повторений:
def print_text(txt, n):
print(txt * n)
print_text('Hello', 5)
print_text('A', 10)
Результат:
HelloHelloHelloHelloHello
AAAAAAAAAA
📖 Параметры и аргументы
- Параметр — это переменная внутри функции, которая получает значение при вызове.
- Аргумент — это реальное значение, переданное в функцию.
def draw_box(height, width):
for i in range(height):
print('*' * width)
height = 10
draw_box(height, 9)
Здесь:
heightиwidth— параметры;heightи9— аргументы при вызове.
🧩 Параметры функции часто называют параметрическими переменными.
🚫 Изменение параметров внутри функции
def draw_box(height, width):
height = 2
width = 10
for i in range(height):
print('*' * width)
n = 5
m = 7
draw_box(n, m)
print(n, m)
Результат:
**********
**********
5 7
💡 Изменения параметров внутри функции не влияют на внешние переменные.
В Python параметры передаются по значению (для неизменяемых типов).
⚙️ Примечания
- Функция может принимать любое количество параметров.
- Формальные параметры — это переменные в объявлении функции.
- Фактические параметры — это данные, которые реально передаются при вызове функции.