В языке Python выражения также могут использоваться в качестве инструкций (то есть в отдельной строке). Однако, поскольку результат вычисления таких выражений не сохраняется, использовать такую возможность имеет смысл только в том случае, если выражение выполняет какие-то полезные действия в виде побочного эффекта.
# Простое вычисление
result = 5 + 3
# Инструкция выражения (выражение, которое вычисляется, но его результат не сохраняется)
5 * 2
# Использование функции print для вывода результата
print(5 * 2) # Это уже не просто инструкция выражения, а полноценная инструкция
В качестве инструкций выражения используются обычно в двух ситуациях:
— Для вызова функций и методов: некоторые функции и методы выполняют огромный объем работы, не возвращая никакого значения. В других языках программирования такие функции иногда называют процедурами. Поскольку они не возвращают значений, которые могло бы потребоваться сохранить, вы можете вызывать эти функции в инструкциях выражений.
— Для вывода значений в интерактивной оболочке: в ходе интерактивного сеанса интерпретатор автоматически выводит результаты вводимых выражений. С технической точки зрения они также являются инструкциями выражений и играют роль сокращенной версии инструкции print.
Теперь вернемся к нашей задаче. Даже при том, что функция
print
вызывается в отдельной строке, как инструкция выражения, тем не менее она возвращает значение, как и любая другая функция (она возвращает значение None, что возвращается всеми функциями, которые явно не возвращают какого-либо значимого значения):>>> x = print(‘spam’) # print – это выражение вызова функции
spam
>>> print(x) # но может использоваться, как инструкция выражения
None