为什么每次创建Student类的新实例时,我的“count”变量都不会递增?
class Student():
def __init__(self,sNam,sADD):
global count
count = 1
self.studentName = sNam
self.studentAddress = sADD
self.studentID = count
count = count + 1
print"Student",self.studentID ,"name is:",self.studentName
print "Student",self.studentID ,"address is:",self.studentAddress
答案 0 :(得分:4)
由于这一行:
count = 1
每次创建Student类的新实例时,都会将计数重置为1。
答案 1 :(得分:1)
请格式化您的代码。
截至目前,你可能一直都会'2'?
每次创建实例时都会设置count = 1
,然后设置一些字段并增加count = count+1
。
请将count = 1
移到您的班级声明之上,然后重试。
答案 2 :(得分:0)
这应该有效:
count = 0
class Student():
def __init__(self,sNam,sADD):
global count
count +=1
self.studentName = sNam
self.studentAddress = sADD
self.studentID = count
print"Student",self.studentID ,"name is:",self.studentName
print "Student",self.studentID ,"address is:",self.studentAddress
a = Student('John','Diggle')
b = Student('Mia','Kunis')
答案 3 :(得分:0)
我认为我陷入了将所有代码包含在类本身而不是外部的思维模式,因为我总是使用Student()创建对象。