gpt4 book ai didi

python - 在不使用经典 if/else 语法的情况下,在 python 中的三元语句中引发错误

转载 作者:太空狗 更新时间:2023-10-30 02:07:06 24 4
gpt4 key购买 nike

在 python 中是否可以直接在三元语句中引发错误?

如:

import numpy as np
y = np.random.rand(200, 5, 5)

y = (y[:, None] if y.ndim == 1
else y if y.ndim == 2
else raise ValueError('`y` must be given as a 1D or 2D array.'))

当然可以用一个简单的 if/elif/else 语句来做到这一点。因此,我特别要求使用“单行”三元语句的解决方案。

澄清一下:
我知道三元语句不是为了引发错误,并且根据 PEP8 等,它不是好的风格。我只是在问是否可能

最佳答案

简单的技术答案:不,这是不可能的——正如您可能自己发现的那样,它会产生 SyntaxtError(raise 是一个语句,三元运算仅支持表达式)。

关于python - 在不使用经典 if/else 语法的情况下,在 python 中的三元语句中引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54824572/

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