2014-02-17 36 views
0

我是新来的蟒蛇和im确保解决这个很简单,但我不能让我的头靠近它。我试图编写一个函数,当函数被调用时更新一个变量。函数第一次被调用时,变量应该是0,每次函数被调用后,变量应该是1.更新函数中的变量

如果我要调用函数5次,我会期待这个结果。

status = 0 
status = 1 
status = 1 
status = 1 
status = 1 

回答

1
def function(status): 
    if function.wasCalled == True: 
     status = 1 
    function.wasCalled = True 
    return status 

function.wasCalled = False 
status = 0 

print(function(status)) 
print(function(status)) 
print(function(status)) 
print(function(status)) 
print(function(status)) 
print(function(status)) 
+0

我相信这适用于我想要做的事情。非常感谢你 – user3299406

0

只需声明一个全局变量并在函数内更新它。

status = 0 

def my_function(): 
    global status # Needed to modify global copy of globvar 
    status = 1 

my_function() 
print status # Should be 1 

这会做伎俩。或者你想在每次调用函数时增加状态?喜欢,称它5次,状态= 5?这里 试试这个:https://ideone.com/KnQEWx

+0

我只想增加一次状态值。因此,第一次调用my_function的状态将等于0,那么每次之后状态将等于1.这是否合理? – user3299406

0

使用下面的代码:

高清YOURNAME(): X = 1 而真: 如果x == 1: 印刷(0) ELIF X != 1: print(1) YourName()