Функции с параметрами

Слайд 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 параметры передаются по значению (для неизменяемых типов).

⚙️ Примечания

  • Функция может принимать любое количество параметров.
  • Формальные параметры — это переменные в объявлении функции.
  • Фактические параметры — это данные, которые реально передаются при вызове функции.