a if condition == True else b 是三元表达式。a如果condition等于Trueelse ,则表示用作基类b。由于condition == True是True所以它使用a:>>> class c(a if condition == True else b): pass>>> c.__bases__(<class __main__.a at 0xb615444c>,)例子:>>> print 'foo' if 0>1 else 'bar'bar>>> print 'foo' if 1>0 else 'bar'foo从文档:该表达式x if C else y首先计算条件,C而不是 x;如果C为true,x则进行评估并返回其值;否则,y将求值并返回其值。