【发布时间】:2019-03-31 06:28:45
【问题描述】:
有没有办法转换这个:
if counts:
def a(l):
return a_with_counts(l)
else:
def a(l):
return a_without_counts(l)
转换成三元表达式?
我试过这样的
def a(l):
return a_with_counts(l) if counts else a_without_counts(l)
但我不希望每次调用a(l) 时都评估if counts,我想在我的方法开始时执行一次,然后每次调用a(l) 时直接评估分配的函数。这可能吗?
谢谢!
【问题讨论】:
-
为什么要三元表达式?
-
为什么不将
counts作为参数添加到函数def a(l, counts=True):等中 -
@B001ᛦ,因为对于给定的输入,我必须多次运行该方法,而
counts保持不变。 -
@Chris_Rands 我不想每次都评估
counts。对于给定的输入,我想做一次,然后在整个过程中使用分配的函数:)
标签: python conditional-operator