Я бы сделал это следующим образом:
def test(a):
a = a +10
return a
print(test(15))
Обратите внимание, что в предложенной версии есть некоторые вещи, отличающиеся от ваших.
Во-первых, то, что я записал, создало бы функция, которая имеет в качестве входного значения значение a (в этом случае значение 15, когда мы вызываем функцию, уже определенную в последней строке), затем присваивает объекту a значение a (которое равно 15) плюс 10 , затем возвращает a (который был изменен и теперь равен 25) и, наконец, выдает результат из последней строки кода:
print(test(15))
Обратите внимание, что то, что вы сделали, на самом деле не было чистым функции, так сказать. Обычно мы хотим, чтобы функции получали входное значение (или несколько) и возвращали входное значение (или несколько). В вашем случае у вас было введенное значение, которое фактически было пустым и не имело выходного значения (поскольку вы не использовали return). Кроме того, вы пытались записать этот вход вне функции (который, когда вы вызвали его, сказав, что test(a)
значение a не было загружено, дало вам ошибку - в глазах компьютера это было «пусто»).
Кроме того, я бы посоветовал вам привыкнуть к записи возврата внутри функции, а затем использовать печать, когда вы ее вызываете (так же, как я писал в последней строке кодирования: print(test(15))
) вместо ее использования внутри функции. Лучше использовать печать только тогда, когда вы вызываете функцию и хотите увидеть, что делает функция на самом деле.
По крайней мере, так они показали мне основные уроки программирования. Это может быть оправдано следующим образом: если вы используете возврат внутри функции, функция даст вам значение, которое позднее может использоваться в других функциях (т. Е. Функция возвращает то, с чем вы можете работать). В противном случае вы получите только номер, отображаемый на экране с печатью, но компьютер не смог бы работать с ним.
P.S. Вы можете сделать то же самое:
def test(a):
a +=10
return a
print(test(15))