Функции без параметров

Слайд 1

🧠 Пользовательские функции без параметров

Мы уже использовали встроенные функции Python — такие как print(), input(), len(), int() и другие. Теперь настало время научиться создавать собственные функции.

📦 Пример без функций

Рассмотрим задачу: нарисовать прямоугольник из звёздочек размером 5×7.

print('*******')
print('*******')
print('*******')
print('*******')
print('*******')

Используя оператор повторения строк:

for _ in range(5):
    print('*' * 7)

Код стал компактнее. Но что если нужно вывести три прямоугольника? Придётся повторять один и тот же блок кода несколько раз:

for _ in range(5):
    print('*' * 7)

print()

for _ in range(5):
    print('*' * 7)

print()

for _ in range(5):
    print('*' * 7)

Это работает, но код громоздкий и неудобный. Любое изменение размеров прямоугольника придётся вносить трижды.

💡 Лучше создать функцию, которая рисует прямоугольник, и просто вызывать её нужное количество раз.

🧩 Объявление функции

Функция объявляется с помощью ключевого слова def (от слова define — «определять»).

def draw_box():
    for _ in range(5):
        print('*' * 7)

Теперь можно вызывать её по имени:

draw_box()

Чтобы вывести три прямоугольника:

draw_box()
print()
draw_box()
print()
draw_box()
✅ Код стал короче, понятнее и легче в обслуживании. Изменив функцию draw_box(), мы автоматически обновим все три прямоугольника.

📛 Именование функций

Имена функций подчиняются тем же правилам, что и переменные:

  • используются латинские буквы, цифры и подчёркивания;
  • имя не может начинаться с цифры;
  • регистр букв имеет значение (draw_boxDraw_Box);
  • желательно использовать стиль lower_case_with_underscores.

Функции обычно называют глаголами, отражающими действие:

  • draw_box() — нарисовать прямоугольник;
  • print_check() — напечатать чек;
  • calculate_salary() — вычислить зарплату.

📜 Пример функции

def print_message():
    print('Я - Артур,')
    print('король британцев.')

# вызов функции
print_message()

Результат:

Я - Артур,
король британцев.

🚀 Вызов функции

Чтобы запустить функцию, достаточно написать её имя и круглые скобки. Объявление функции не вызывает её автоматически!

# объявление
def print_message():
    print('Привет!')

# вызов
print_message()

⚙️ Ключевое слово pass

Иногда нужно создать «пустую» функцию, которая пока ничего не делает. Для этого используется ключевое слово pass.

def do_nothing():
    pass
🧱 pass — это заглушка. Она позволяет избежать ошибок, если функция объявлена, но её код ещё не написан.

⚠️ Важно помнить:

  • Функцию нужно объявить до её вызова.
  • Все строки внутри функции должны иметь одинаковый отступ (обычно 4 пробела).
❌ Ошибка при вызове до объявления:
print_message()  # ошибка!
def print_message():
    print('Привет!')

Ошибка:

NameError: name 'print_message' is not defined
❌ Ошибка из-за неверных отступов:
def print_greeting():
    print('Доброе утро!')


print('Сегодня мы изучаем функции.')
    print('Это важная тема!')

Ошибка:

IndentationError: unexpected indent
💬 Функции часто называют подпрограммами, потому что они выполняют одну конкретную задачу и могут вызываться в разных частях программы.