Блок коду

Модуль 1: Python Core
Рівень 3 , Лекція 6
Відкрита

7.1 Важливість відступів

Іноді тобі потрібно згрупувати кілька команд у групу. Таку групу називають блоком команд або просто блоком коду. У Python блоки коду визначаються за допомогою відступів, що робить структуру програми чистою і читабельною.

На відміну від багатьох інших мов програмування, де блоки коду позначаються дужками або ключовими словами, Python використовує відступи для розмежування послідовностей інструкцій, що називається блочною структурою.

Теоретично відступи можуть бути виконані за допомогою пробілів або табуляції. Проте PEP 8, офіційний гід по стилю написання коду на Python, рекомендує використовувати 4 пробіли для одного рівня відступу. Важливо використовувати єдиний стиль відступів у всьому коді.

Структура блоків:

Блок коду починається з інструкції, за якою слідує двоеточие (наприклад, if, for, while, def, class) і відступ на наступній лінії. Всі інструкції з однаковим рівнем відступу вважаються частиною одного блоку.

Відступи впливають на те, як Python інтерпретує код. Неправильне використання відступів може призвести до IndentationError або змінити логіку програми.

7.2 Однакова кількість відступів

Дуже важливо, щоб у блоків коду була однакова кількість відступів. Тому дуже не рекомендується змішувати символи табуляції і пробіли. Деякі редактори відображають символ табуляції як 8 пробілів, інші — як 4. Це може привести до помилок.

PyCharm вирішує цю проблему просто: він вставляє 4 пробіли кожного разу, коли ти натискаєш кнопку TAB на клавіатурі. Немає символів табуляції — немає проблем.

Приклад:

Неправильно Правильно

x = 10
if x > 5:
print("x більше 5")
else:
print("x не більше 5")

x = 10
if x > 5:
    print("x більше 5")
else:
    print("x не більше 5")

Коли є декілька вкладених if, то помилку допустити дуже легко:

Неправильно Правильно

x = 20
y = 30
if x > 10:
    if y > 20:
    print("y більше 20")
else:
    print("x не більше 10")

x = 20
y = 30
if x > 10:
    if y > 20:
        print("y більше 20")
else:
    print("x не більше 10")

Тобі потрібно чітко розуміти до якого if належить else, інакше ти ризикуєш неправильно розставити відступи і отримати програму, яка виконує зовсім не те, що тобі хотілося.

Особливо часто цю помилку роблять новачки, коли вирішують готовий шматок коду занести під if. Або перенести блок коду з одного місця в інше, де повинно бути інше кількість відступів.

Користуйся PyCharm: ця IDE чудово знає про ці проблеми і самостійно додає потрібну кількість відступів при перенесенні коду.

Коментарі (4)
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ
Tony Рівень 65
30 травня 2025
Помилка в тексті: "Блок коду починається з інструкції, за якою слідує двоеточие" правильно: двокрапка
Дмитро Рівень 21
10 березня 2025
баг з тестом task13.py видає що тест не пройшов. Те саме рішення в pycharm - пройшло
DanMan Рівень 7
22 червня 2025
та сама фігня
Юлія Рівень 7
29 липня 2025
Все працює