我正在编写一个程序,旨在在 Active Directory 中生成大量事件以对另一个软件进行压力测试。为了创建用户,我正在创建一个简单的类,例如
class ADUser(object):
def __init__(self):
self.firstname = self.firstname() # returns a random name from a big list
self.lastname = self.lastname() # returns a random name from a big list
self.fullname = self.firstname + " " + self.lastname
self.employeeid = ??? # an incrementing integer... somehow
给我带来麻烦的是 employeeid
属性。我希望在每次创建用户对象时都有这个增量——这将保证唯一的 ID 号并帮助我跟踪事件。但是,我不确定如何在类里面做到这一点。我可以使用 for
循环在类外轻松完成它,但这似乎不是最干净或最“Pythonic”的方法。
这可能是一个简单的问题,但一直困扰着我。
最佳答案
这是 static variable 的完美用例.
class ADUser(object):
numEmployees = 0
def __init__(self):
self.firstname = self.firstname() # returns a random name from a big list
self.lastname = self.lastname() # returns a random name from a big list
self.fullname = self.firstname + " " + self.lastname
ADUser.numEmployees += 1
self.employeeid = ADUser.numEmployees
关于python - 类实例中的增量实例计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8681052/