重用函数返回的值

问题描述 投票:-1回答:2

我试图弄清楚如何重用我已经返回到我的函数的值。对于这个例子,a = 0,b = 0,c = 5:

def helllo_wolrd(a,b,c):
    import random
    for elem in (a,b,c):
        if elem == 0:
            print ('trying again')
        if elem is not 0:
            return elem

现在让我说我想继续这样的功能:

value = random.randint(1,elem) 

或者只是使用for循环来完成上面提到的范围。如何调用返回的元素然后重新使用它?在单独的函数中重新使用elem的相同问题。或者换句话说,如何从函数中调用返回值以在第二个函数中使用。

非常感谢

python function return
2个回答
1
投票

在您的示例中,elem等于5,您可以将返回值赋给变量,如下所示:

new_variable = helllo_wolrd(0,0,5)

现在new_variable也等于5。然后,您可以在其他表达式中使用新变量。

value = random.randint(1,new_variable) 

1
投票

如果所有3个值a,b,c都是0,那么你的函数将隐式地使用return None。你的随机调用会抛出一个错误。如果elem为None,您可以提供默认值:

elem = hello_world(0,0,0)
value = random.randint(1,elem or 42) # uses 42 if elem is None (or 0)

如果不是所有三个都是0,则elem可以按原样使用而不会默认为某些东西。

© www.soinside.com 2019 - 2024. All rights reserved.