我发现我们可以在函数调用参数中使用三元运算:
def foo(n):
print(n)
^{pr2}$
我想知道是否有一种方法可以在函数调用参数中不使用else来使用if?所以如果是真的,就把a传给它,如果不是,就不要传递任何东西。在
我试过了
foo(a if a>b else pass)
foo(a if a>b)
foo(if a>b: a)
foo(a>b and a)
以上这些都不管用。在
谢谢你的帮助。在
编辑-----
对不起,让我重新表述一下我的问题。在
我要求的是一种方法来决定我是否应该根据条件通过这个论证。在
所以基本上,我必须调用一个需要很多夸克的函数,比如:
# function call
thefunc(
a=1,
b=2,
c=3,
d=4,
e=5
#...
)
所有的参数都是由我决定的选项,或者在某些情况下,是一个条件。在
因为参数列表太大了,所以不喜欢在if语句中编写函数调用,所以我需要知道有没有一种方法,比如:
thefunc(
a=1,
#if condition: b=2,
c=3,
....
)
所以决定是否给夸格。如果没有也没关系,只是需要知道,谢谢。在
三元运算符需要if和else子语句。您可以使用默认函数参数,而不是只使用if:
如果需要,将
None
传递给函数:foo(a if a > b else None)
然后检查
^{pr2}$None
-非None
参数:如果你不介意丑陋的话。。。*语法将值列表转换为参数,因此可以使用:
你是否应该是另一回事:-)
相关问题 更多 >
编程相关推荐