Ash*_*ary 24 python ternary-operator
在c我可以做的事情:
int minn(int n, int m){
return (n<m)? n:m
}
Run Code Online (Sandbox Code Playgroud)
但是在python中我无法实现相同的目标:
def minn(n,m):
return n if n<m else return m
Run Code Online (Sandbox Code Playgroud)
这给了 Syntax Error
我知道我可以这样做:
def minn(n,m):
return min(n,m)
Run Code Online (Sandbox Code Playgroud)
我的问题是,我不能在python中使用三元运算符.
Kar*_*ath 50
您的C代码不包含两个return语句.你的python代码也不应该...你的三元表达式的翻译是n if n<m else m,所以只要在返回值时使用该表达式:
def minn(n,m):
return n if n<m else m
Run Code Online (Sandbox Code Playgroud)
lol*_*pop 12
def minn(n,m):
return n if n<m else m
Run Code Online (Sandbox Code Playgroud)
该expr1 if expr2 else expr3表达式是一个表达式,而不是一个声明.return是一个声明(见这个问题)
因为表达式不能包含语句,所以代码会失败.
| 归档时间: |
|
| 查看次数: |
18222 次 |
| 最近记录: |