0

我有一个这样的 Python 类:

class Zoo:
  pandas = 0
  tunas = 0
  cows = 0

  #...other attributes and methods below

由于我无法控制的神圣力量,我无法以任何方式修改课程(是的,我意识到这里有一本动物词典会更好)。我想编写将在类的实例上运行的代码,并将上面显示的 3 个随机属性增加 1。

本质上,我想写这样的东西:

import random
z = Zoo()
attributes = [z.pandas, z.tunas, z.cows]
random.choice(attributes) += 1

当然,这是行不通的。怎么做呢?

4

1 回答 1

3
attributes = ['pandas', 'tunas', 'cows']
choice = random.choice(attributes)
setattr(z, choice, getattr(z, choice) + 1)
于 2013-10-16T04:05:11.257 回答