Python 在一行中使用多个if-else语句

Python 在一行中使用多个if-else语句,python,if-statement,conditional-statements,Python,If Statement,Conditional Statements,是否可以在一行中使用多个if-else语句 我只知道一对if-else可以写如下: weight = 50 if weight > 60: weight = 'heavy' else: weight = 'light' print(weight) 如果我写两对If-else,或者使用If-else-elif,我怎么能把它写成一个句子呢 weight = 50 height = 165 if weight > 60: if height > 170

是否可以在一行中使用多个if-else语句

我只知道一对if-else可以写如下:

weight = 50

if weight > 60:
    weight = 'heavy'
else:
    weight = 'light'

print(weight)
如果我写两对If-else,或者使用If-else-elif,我怎么能把它写成一个句子呢

weight = 50
height = 165

if weight > 60:
    if height > 170 = 'skinny'
        else : 'fat'
else:
    if height > 160 = 'skinny'
        else : 'fat'    
print(weight)
我知道不推荐,但我只是想知道


谢谢

如果还有其他问题,您可以使用多级

    weight = 50
    height = 165
    ans = ('skinny' if height>170 else 'fat') if weight>60 else ('skinny' if height>160 else 'skinny')
    print(ans)

如果你想让它简洁而不增加可读性,你可以这样写:

score = "skinny" if height > [160,170][weight>60] else "fat"
或者这个:

score = ["fat","skinny"][height>[160,170][weight>60]]

你为什么想要这样的东西,这使它无法理解你的变量用法非常混乱,你的一些代码是无效的。请修复代码并一致使用权重和分数。@DavidS我知道这是不可读的,不推荐使用,但我只是想知道这是否可行。@AlainT。很抱歉我把它改成谢谢你的回答。我想使用倍数是一种很好的方法,但是会让人很困惑。谢谢你的回答
score = ["fat","skinny"][height>[160,170][weight>60]]