gpt4 book ai didi

python - 超过 2 个值之间的内联条件

转载 作者:太空狗 更新时间:2023-10-29 21:39:44 24 4
gpt4 key购买 nike

我需要做这样的事情:

if A
function(a)
elif B
function(b)
else
function(c)

我在这里找到了更简单的版本:

function(a if A else c)

elif 有版本吗?像这样的东西:

function(a if A b elif B else c)

我应该怎么写这个(如果存在的话)?上面的代码看起来不对。

最佳答案

不,没有 elif。只需链接 if:

function(a if A else b if B else c)

这相当于(因为 precedence 从左到右):

function(a if A else (b if B else c))

显然这可能会变得复杂(并且超过 PEP8 80 个字符的限制),例如:

move(N if direction == "N" else E if direction == "E" else S if direction == "S" else W)

在这种情况下,较长的形式更好:

if direction == "N":
move(N)
elif direction == "E":
move(E)
elif direction == "S":
move(S)
else:
move(W)

关于python - 超过 2 个值之间的内联条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27493055/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com