7.1 Важливість відступів
Іноді тобі потрібно згрупувати кілька команд у групу. Таку групу називають блоком команд або просто блоком коду. У Python блоки коду визначаються за допомогою відступів, що робить структуру програми чистою і читабельною.
На відміну від багатьох інших мов програмування, де блоки коду позначаються дужками або ключовими словами, Python використовує відступи для розмежування послідовностей інструкцій, що називається блочною структурою.
Теоретично відступи можуть бути виконані за допомогою пробілів або табуляції. Проте PEP 8, офіційний гід по стилю написання коду на Python, рекомендує використовувати 4 пробіли для одного рівня відступу. Важливо використовувати єдиний стиль відступів у всьому коді.
Структура блоків:
Блок коду починається з інструкції, за якою слідує двоеточие (наприклад, if, for, while, def, class) і відступ на наступній лінії. Всі інструкції з однаковим рівнем відступу вважаються частиною одного блоку.
Відступи впливають на те, як Python інтерпретує код. Неправильне використання відступів може призвести до IndentationError або змінити логіку програми.
7.2 Однакова кількість відступів
Дуже важливо, щоб у блоків коду була однакова кількість відступів. Тому дуже не рекомендується змішувати символи табуляції і пробіли. Деякі редактори відображають символ табуляції як 8 пробілів, інші — як 4. Це може привести до помилок.
PyCharm вирішує цю проблему просто: він вставляє 4 пробіли кожного разу, коли ти натискаєш кнопку TAB на клавіатурі. Немає символів табуляції — немає проблем.
Приклад:
| Неправильно | Правильно |
|
|
Коли є декілька вкладених if, то помилку допустити дуже легко:
| Неправильно | Правильно |
|
|
Тобі потрібно чітко розуміти до якого if належить else, інакше ти ризикуєш неправильно розставити відступи і отримати програму, яка виконує зовсім не те, що тобі хотілося.
Особливо часто цю помилку роблять новачки, коли вирішують готовий шматок коду занести під if. Або перенести блок коду з одного місця в інше, де повинно бути інше кількість відступів.
Користуйся PyCharm: ця IDE чудово знає про ці проблеми і самостійно додає потрібну кількість відступів при перенесенні коду.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ