为什么我不断收到'NameError'? [重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么我不断收到'NameError'? [重复]相关的知识,希望对你有一定的参考价值。

我已经使用Python进行了这个小型编码练习已经几个小时了:

def collatz(number):
        if number % 2 == 0:
            print(number // 2)
            return number // 2

        elif number % 2 == 1:
            result = 3 * number + 1
            print(result)
            return result

print('Enter a number: ')
try:
    enter = int(input())
except ValueError:
    print('Please type an integer. Try again...')

while enter != 1:
    enter = collatz(enter)

[输入数字似乎很正常,当我输入一个非整数值时,我得到了正确的响应,但在响应后仍然出现此错误:

Enter a number: 
Hello
Please type an integer. Try again...
Traceback (most recent call last):
  File "C:/Users/P1ttstop/PycharmProjects/sweigartLearning/collatzSequence.py", line 17, in <module>
    while enter != 1:
NameError: name 'enter' is not defined

我一直在尝试解决此问题,但令我沮丧的是,我似乎无法弄清楚。这是怎么回事?

答案

我已经测试了代码,并修改了一部分。

另一答案

来自Python文档,一个NameError异常是:

以上是关于为什么我不断收到'NameError'? [重复]的主要内容,如果未能解决你的问题,请参考以下文章

我收到类似 NameError 的错误:未定义名称“df_clean”

为何会出现NameError: name 'arg' is not defined错误?如何解决

Python 解决 :NameError: name 'reload' is not defined 问题

NameError:未定义名称“convertToBinaryData”

名称'conn'未定义:NameError

为啥我不断收到此空指针未知来源错误?