Глупость на чеки и суммы - Python - PullRequest
0 голосов
/ 01 октября 2011

Что является более интенсивным ЦП, чтобы сделать if (x == num): проверить, или сделать сумму x + y?

1 Ответ

1 голос
/ 01 октября 2011

Ваш вопрос несколько неполон, потому что вы сравниваете две разные операции.Если вам нужно сложить две вещи вместе, то тестирование x==y никуда вас не приведет.Итак, предположительно, вы хотите сравнить

if y != 0:
    sum += y

с

sum +=y

Это намного сложнее для интерпретируемых языков, таких как Python, но на оборудовании тест для ненулевого значения вводит ветвьэто само по себе может быть дорогим.Но я не хотел бы говорить, что было бы быстрее без синхронизации.

Прибавьте к уравнению различные характеристики производительности разных архитектур, и у вас есть еще один смешивающий фактор.

Как всегда, вы лучшесначала написать свой код наиболее удобным для сопровождения способом, а затем рассчитать его.Если вам кажется, что вам нужно повысить производительность, используйте профилировщик, чтобы найти «горячие точки», а затем оптимизировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...