Магическое число
Анти-паттерн
Магическое число в коде мало о чем говорит. Когда число без переменной возникает в коде, для читателя это всегда неожиданность, ведь абсолютно не понятно, что оно означает. Рекомендуется использовать именованные константы для таких чисел.
Пример 1¶
Плохо:
def calculate(value):
return value + 108
Хорошо:
def add_magic_num(value):
magic_num = 108
return value + magic_num
Пример 2¶
Если используете общеизвестную константу - погуглите: наверняка уже есть библиотека, которая её предоставляет её точное значение.
Плохо:
def calculate_circle_area(radius):
circle_area = 3.14 * radius ** 2
return circle_area
Плохо:
PI_NUMBER = 3.14159
def calculate_circle_area(radius):
circle_area = PI_NUMBER * radius ** 2
return circle_area
Хорошо:
from math import pi
def calculate_circle_area(radius):
circle_area = pi * radius ** 2
return circle_area