小编hus*_*sam的帖子

限制类变量的修改,新实例除外

这是以下帖子的后续问题(不需要检查链接即可理解问题)

类的计数器变量

我们将idCounterStudent 类设置为类变量,并计算创建的实例数。

这是班级:

class Student:
# A student ID counter
    idCounter = 0
def __init__(self):
    self.gpa = 0
    self.record = {}
    # Each time I create a new student, the idCounter increment
    Student.idCounter += 1
    self.name = 'Student {0}'.format(Student.idCounter)
Run Code Online (Sandbox Code Playgroud)

现在,我们实例化一些实例,然后检查 的值idCounter

student1 = Student()
student2 = Student()
student3 = Student()
student4 = Student()

Student.idCounter
4
Run Code Online (Sandbox Code Playgroud)

但是,如果您可以这样做,那么维护计数器就变得毫无意义:

Student.idCounter = 2000
Run Code Online (Sandbox Code Playgroud)

现在创建新实例:

student5 = Student()
Run Code Online (Sandbox Code Playgroud)

并检查idCounter

Student.idCounter

2001
Run Code Online (Sandbox Code Playgroud)

idCounter可以简单地搞砸计数器而无需运行__init__

如何创建一个仅在__init__ …

python python-3.x

5
推荐指数
1
解决办法
1190
查看次数

标签 统计

python ×1

python-3.x ×1