Is There '?' Control Flow in Python?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Python Ternary Operator
是否有类似于'?'的控制流运算符?Python中的C/C++?
如果有类似的代码块:
1 | return n <= 1 ? n : fibo(n-1) + fibo(n-2) |
将出现如下错误:
1 2 3 4 | File"fibonacci.py", line 2 return n <= 1 ? n : fibo(n-1) + fibo(n-2) ^ SyntaxError: invalid syntax |
是的,条件表达式在python 2.5+中可用:
1 | return n if n <= 1 else fibo(n-1) + fibo(n-2) |
你可以试试这个短路表达式