python计数器变量_类的计数器变量

前一段时间,我找到了这个答案,帮助我找到了需要什么来整理类与实例变量及其作用域。

所以,一个扩展,做同样的事情,只使用一个生成器。生成器像idCounter一样为学生分配一个唯一的数字——只使用这些值。生成器类上没有prev方法,我知道这一点。idGenerator和idCounter都没有被记住,所以如果你想将列表外部化然后回来添加一个或多个学生,你就必须相应地更新范围(start,,),或者迭代每个值而不分配它,直到你按顺序得到唯一的值为止,idCounter的路径稍微短一些,您可以简单地用一个虚拟实例构造来设置它。class Student:

""" Implement a shared generator among all sub-classes

in addition to idCounter. """

# A student ID counter

idCounter = 0

# A student ID from generator

idGenerator = (x for x in range(0xAAAAAA, 0xEEEEEE, 0xBA))

def __init__(self):

self.gpa = 0

self.record = {}

# Each time I create a new student, the idCounter increment

Student.idCounter += 1

self.id = Student.idGenerator.__next__()

self.name = f"{self.id} Student {Student.idCounter}"

classRoster = [] # List of students

for number in range(25):

newStudent = Student()

classRoster.append(newStudent)

print(newStudent.name)

你可能感兴趣的:(python计数器变量)