我正在尝试运行以下程序,但是当我运行时,我的年龄"NameError : name " " is not defined"



这是代码片段,请帮助我,我是编程的新手

class person():
def __init__(self,initialAge):
self.age = 0
#self.initialAge = 0
if(initialAge < 0):
print("Age is not valid")
else:
self.age = initialAge
def amIold(self):
if(age < 13):
print("You are young")
elif(age >= 13 and age < 18):
print("You are teenage")
else:
print("You are old")
def yearPasses(self):
global age
age += 1

伙计们,这是一个图片链接,请检查更多的澄清

此方法:

def yearPasses(self):
global age
age += 1

应该通过self访问age属性,因为它是实例属性,而不是全局变量:

def yearPasses(self):
self.age += 1

您还需要在amIold方法中使用相同的方法:

def amIold(self):
if(self.age < 13):
print("You are young")
elif(self.age >= 13 and self.age < 18):
print("You are teenage")
else:
print("You are old")

此外,也没有必要对if语句if age < 13:使用反命题

相关内容

最新更新