NameError обычно вызывается неопределенным именем переменной . Если вы используете testInput
в качестве имени переменной, то есть без кавычек, вы должны сначала определить его. Попробуйте что-то вроде этого:
testInput = "my_input_test"
func(testInput)
Или вы можете просто использовать саму строку в качестве аргумента:
func("my_input_test")
Иногда опечатки могут также привести к неопределенному имени переменной, а затем NameError
.
Звучит так, как будто ваши операторы try ... except
находятся внутри вашей функции, ошибка происходит до того, как тело функции будет выполнено, поэтому вы не можете захватить ее внутри тела функции. Чтобы продемонстрировать, как эта ошибка может быть обнаружена, вы можете попробовать следующий код.
# !!! DEMO ONLY. DON'T DO THIS.
try:
func(testInput)
except NameError:
# Your code here
ВАЖНО : NameErrors обычно является признаком того, что вам необходимо исправить имена переменных / функций / классов . Использование try ... except
для их отлова, как правило, является плохой практикой и приведет к запутанному и бесполезному коду.