`a?b:c`的等价写法

54 投票
4 回答
66712 浏览
提问于 2025-04-16 17:35

我该如何更简单地实现这个逻辑呢?

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

我现在最好的方法是 print(['M', 'F'][int(isfemale_bit)])。有没有更好的办法呢?

4 个回答

15
 print 'F' if isfemale_bit else 'M'

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

17

啊,三元运算符:

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

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

a if b else c

这里有更多讨论:Python有没有三元条件运算符?

撰写回答