python 'a?B:c'的等值[重复]

z18hc3ub  于 2023-01-16  发布在  Python
关注(0)|答案(4)|浏览(105)
    • 此问题在此处已有答案**:

Does Python have a ternary conditional operator?(30个答案)
15小时前关门了。
如何更简单地实现这个逻辑?

if isfemale_bit:
    print('F')
else:
    print('M')

我现在最好的是print(['M', 'F'][int(isfemale_bit)])。有更好的选择吗?

pdsfdshx

pdsfdshx1#

在Python 2.5中,你可以像这样使用三元条件:

a if b else c

这里有更多的讨论:Does Python have a ternary conditional operator?

z4iuyo4d

z4iuyo4d2#

啊,三元运算符:

>>> print 'foo' if True else 'bar'
foo
>>> print 'foo' if False else 'bar'
bar
polhcujo

polhcujo3#

print 'F' if isfemale_bit else 'M'
41zrol4v

41zrol4v4#

我猜您正在寻找一个类似于C代码中的o isfemale_bit?'F':'M'的解决方案,因此您可以使用and-or构造(请参阅深入了解Python)
print isfemale_bit and 'F' or 'M'

相关问题