Доброго времени суток, пишу FizzBuzz на Python и не понимаю одной вещи:
Почему этот код:
if i % 3 == 0:
if i % 5 == 0:
print("FizzBuzz")
elif i % 5 == 0:
print("Buzz")
else:
print("Fizz")
Работает на несколько секунд (итераций всего 100.000) быстрее вот этого:
if i % 3 == 0:
if i % 5 == 0:
print("FizzBuzz")
else:
print("Fizz")
else:
print("Buzz")
Потому что по логике, когда число кратно только 3, должно совпасть первое условие, а потом перейти на ветку else, что, как я считаю, должно быть гораздо быстрее, чем выход из одного условия, проверка elif i % 5 == 0, и только потом else
Объясните пожалуйста, почему так происходит?