python的bool-and-or语法主要是为了模仿三目运算符
int a = 2;
int b = 3;
max = a > b ? a :b
>>> a = "first"
>>> b = "second"
>>> 1 and a or b
'first'
>>> 0 and a or b
'second'
但有个特殊的地方,bool and a or b, 当a为假时不能像三目运算符一样工作, 但可以用逻辑来解释
假设bool为真,此时 bool and a为假, 而b为真, 则结果为b
>>> b = "second"
>>> a = ''
>>> 1 and a or b
'second'