在 Python 2.7.3 中,每次对某个函数进行一定次数的调用时,我都需要递增一个变量。
例如,feetTraveled = 0
。 每 12 次调用
travelOneInch()
,feetTraveled += 1
。
使用 for 循环是最佳选择还是应该使用不同的东西? 如果最好使用像上面这样的 for 循环,那么应该放置什么而不是“每 12 次调用”?
另一个例子:我有四个仆人。它们每个在一个时钟周期内执行一项任务,并且计时器最初为time = 0
。因此,每四次调用servantDo()
,time += 1
。
最佳答案
在这种情况下,我想我会使用实例方法:
class Foo(object):
def __init__(self):
self.inches = 0
self.feet = 0
def travel_one_inch(self):
self.inches += 1
if self.inches > 11:
self.inches = 0
self.feet += 1
def __str__(self):
return "{feet} feet and {inches} inches".format(feet=self.feet,inches=self.inches)
a = Foo()
for _ in range(123):
a.travel_one_inch()
print(a)
绝大多数时候,如果您希望函数在调用之间记住某种状态,那么您根本就不是在寻找函数,而是在寻找具有实例方法的类。
关于python - 如何在 Python 中循环调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13533953/