Учитывая следующее как две версии очень простой функции в Python , вопрос в том, какая из них предпочтительнее другой и почему?
Есть ли дополнительное использование памяти и или использование ЦП для case 1
по сравнению с case 2
, в котором использовалось дополнительное назначение?
, дело 1:
def f(x):
y = x*x
return y
дело 2:
def f(x):
return x*x
С моей точки зрения, case 1
более ясен, чем другой, особенно в случае сложных вычислений и обеспечения множества возвращаемых объектов. С другой стороны, case 2
выглядит очень компактно и будет считаться очень привлекательным. Поскольку простое просто эффективно. Что ты думаешь?
Обновление:
Я не знал, что в Python есть дизассемблер! Это было так удивительно, когда я узнал ответ на свой вопрос и как проверить похожие идеи. Особая благодарность.
from dis import dis as dasm
dasm(f)