Xfxyxbb 发表于 2020-3-11 09:36:42

这个代码有一段不是很理解

第一个条件语句的else中
Return is_palindrome(n,start+1,end-1) if n == n else 0
是什么意思,为啥后面有if和else,是什么意思,这不是列表解析的表达方式吗

qiuyouzhi 发表于 2020-3-11 09:42:25

这是三元表达式

sangchengliang 发表于 2020-3-11 09:46:26

这只是一种语法结构, 这么写是为了所少代码的行数, 但是你用平常的if .. else也能实现, 反正不用纠结为什么这样写, 你只要记住格式是这样的就行了

DavidCT 发表于 2020-3-11 10:26:53

三元运算符,精简但是确实有点绕

zltzlt 发表于 2020-3-11 11:58:17

这是三元表达式,相当于:

if n == n:
    return is_palindrome(n,start+1,end-1)
else:
    return 0
页: [1]
查看完整版本: 这个代码有一段不是很理解