Python 3.6 中的“名称错误-名称未定义”

问题描述 投票:0回答:2

如果有人告诉我为什么这条消息不断出现,我将非常感激。我被我的计划困住了。所有其他问题都暗示肯定存在拼写错误(但我没有看到)或 Python 2 的

raw_input
。还有其他原因可能会发生这种情况吗?

Click here to see code

我遇到的错误位于第 3 行:

回溯(最近一次调用最后一次):文件 “/Users/AlexTona/Documents/bible code.py”,第 3 行,位于 如果答案1==“是”:名称错误:名称“答案1”未定义

我已经浏览了教程和许多论坛,但我决定尝试发布代码,因为它更适合我的需求。

answer1:input("Are you unhappy today?-Yes or No")

if answer1=="yes":
    print("That's because God loves you!")
elif answer1=="no":
    print ("Did you know God loves you?")
else:
    print ("ERROR, please answer YES or NO")
python python-3.x debugging nameerror
2个回答
0
投票

如果您重新输入代码,则可能会引入其他错误。剪切和粘贴确实要好得多。如果您重新输入代码,那么您输入的是您认为代码应该是什么,而不是它是什么,因此您要求我们在您认为自己正在做的事情中查找错误,而不是在您实际正在做的事情中查找错误。

报告的代码运行没有错误。

从您报告的错误消息来看,第 3 行 (

answer1
) 中的变量名称与第 1 行中的变量名称不同。请检查拼写。或者将代码从 SO 粘贴回 Python 解释器中。

编码确实会更好:

answer1=input("Are you unhappy today?-Yes or No").upper()

您的代码会提示用户输入 YesNo,然后如果用户输入其中任何一个就会抱怨。它要求“是”,但期望“是”。不友善。 在代码的初始图像中,我这样做了:


0
投票

而不是这个:

answer1=input

事实证明这确实是一个语法错误。

© www.soinside.com 2019 - 2024. All rights reserved.