我有一个反复运行的函数。在该函数中,我希望仅在第一次运行该函数时运行特定的段。
我不能使用函数外部的任何变量,例如
firstTime = True
myFunction(firstTime): #function is inside a loop
if firstTime == True:
#code I want to run only once
firstTime = False
#code I want to be run over and over again
我也不想使用全局变量。
任何想法如何实现这一点?
最佳答案
使用可变的默认参数:
>>> def Foo(firstTime = []):
if firstTime == []:
print('HEY!')
firstTime.append('Not Empty')
else:
print('NICE TRY!')
>>> Foo()
HEY!
>>> Foo()
NICE TRY!
>>> Foo()
NICE TRY!
为什么这样做?查看 this 问题了解更多详情。
关于Python:在无限循环函数中只运行一次代码段..?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33881979/