python中return 语句与 分支语句连用问题
迷茫
迷茫 2017-04-18 10:31:56
0
2
901

在如下代码中
return ' '.join(s.split()[::-1]) if s.strip() != "" else s
为什么if s.strip() != "" else s写在return之后,照样可以判断
这条Python语句工作过程是怎么样的,尤其是return语句与分支语句的关系

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(2)
迷茫

其实就是其他语言的三目运算符

if s.strip() !== "":
    return ' '.join(s.split()[::-1])
else:
    return s
黄舟

return后面是一个整体,上面的大佬说的很清楚了,就三目运算符

' '.join(s.split()[::-1]) if s.strip() != "" else s
# 简化版
A if X else B

如果X为True,则这个整体值为A,否则为B

三目运算符在其他语言中是这么写的

X ? A : B;
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage