Создавать ли новую переменную для возврата в функцию Python - PullRequest
0 голосов
/ 09 июля 2019


Ищите несколько указаний о том, следует ли назначать новую переменную в функции перед возвратом результата, следующим образом:

# create function to take in a number
# which is then taken to the power of another number
# make a new variable called result, and return that variable

def exponential(number, power):
    result = number**power
    return result

Или я могу просто вернутьВсе вычисления в одной строке:

def exponential(number, power):
    return number**power


Я чрезвычайно новичок в программировании, поэтому я знаю, что везде есть вероятные ошибки.Любые отзывы о том, как я задал этот вопрос, что-либо еще в коде или какие-либо ключевые слова, которые помогли бы мне найти это в Google, также приветствуются.

Ответы [ 2 ]

0 голосов
/ 09 июля 2019

Нет веских причин отдавать предпочтение одному над другим.

Для нетривиальных вычислений назначение значения переменной может сделать код более читабельным, а также легче отладить (потому что вы можете print(...)или - еще лучше - logging.info(...) значение и иным образом исследовать и манипулировать им до того, как return его), но где именно провести черту, полностью зависит от вас и предполагаемой аудитории.

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

0 голосов
/ 09 июля 2019

Вы можете вернуть результат в одну строку, как во втором примере.

...