C++中的短形式“IF”的Python等价

2024-10-16 20:40:06 发布

您现在位置:Python中文网/ 问答频道 /正文

Possible Duplicate:
Python Ternary Operator

有没有办法在Python中编写这个C/C++代码? a = (b == true ? "123" : "456" )


Tags: 代码trueoperator办法duplicatepossibleternary
3条回答

虽然a = 'foo' if True else 'bar'是执行三元if语句(python 2.5+)的更现代的方法,但您的版本的1:1等效值可能是:

a = (b == True and "123" or "456" )

。。。在python中应该缩短为:

a = b is True and "123" or "456"

。。。或者如果你只是想测试b值的真实性。。。

a = b and "123" or "456"

? :可以换成and or

a = '123' if b else '456'

我的神秘版本。。。

a = ['123', '456'][b == True]

相关问题 更多 >