Глава 4 · Python любит числа

Комментарии в вычислениях: единицы, формулы и намерение

Числа сами по себе не несут смысла — комментарии и осмысленные имена помогают зафиксировать, что именно они означают.

Комментарии мы уже подробно разбирали в главе 3 — здесь не будем повторять весь урок, а сосредоточимся на том, чем комментарии особенно полезны именно в вычислениях: единицы измерения, формулы и скрытые предположения.

Число само по себе не несёт единицу измерения

Взгляните на эту строку:

distance.py
distance = 120  # км

Комментарий здесь помогает — но остаётся хрупким: он живёт отдельно от значения и никто не проверяет, что он всё ещё верен. Более надёжный (хоть и не идеальный) приём — включить единицу прямо в имя:

distance2.py
distance_km = 120

Так яснее видно из самого кода, что именно хранится — без необходимости искать комментарий рядом. Мы вернёмся к более строгим способам связывать значения с их смыслом (типы, структуры данных) в следующих главах — здесь достаточно осознавать саму проблему: Python не знает, что число 120 означает километры. Это знание существует только в голове того, кто написал код — и в лучшем случае в имени или комментарии.

Комментарии для формул и предположений

Отдельная, очень полезная роль комментариев — объяснить формулу или зафиксировать предположение, которое иначе останется «магическим числом»:

nds.py
# НДС в учебном примере: 23 %
vat_rate = 0.23
price = 100
total = price * (1 + vat_rate)
print(total)
Хороший комментарий объясняет то, чего не видно из кода
vat_rate = 0.23 — само число не объясняет, откуда оно взялось и что означает. Комментарий # НДС в учебном примере: 23 % отвечает именно на этот вопрос — «почему именно это число», а не «что делает эта строка».

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

Практика: единицы измерения и комментарии к формулам
Интерактивный ноутбук прямо в браузере — сделайте числовой код понятным
Открыть практику →