扫码关注官方订阅号
items=[1,2,3,4] def sum(items): head,*tail = items return head+sum(tail) if tail else head
上述代码中的if tail else head如何理解?为何if else 会有这种书写形式?
谢谢
业精于勤,荒于嬉;行成于思,毁于随。
head+sum(tail) if tail else head 是一个整体
head+sum(tail) if tail else head
比如a if a > b else b等价于max(a, b)等价于(a>b)?a:b
a if a > b else b
max(a, b)
(a>b)?a:b
这是python的语法糖,因为早期的python程序员喜欢用各种hack来实现?表达式,所以python在语法上提供了这种形式
这是Python中的三元表达式
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
head+sum(tail) if tail else head是一个整体比如
a if a > b else b等价于max(a, b)等价于(a>b)?a:b这是python的语法糖,因为早期的python程序员喜欢用各种hack来实现?表达式,所以python在语法上提供了这种形式
这是Python中的三元表达式