如何理解Python cook book中的一段代码
迷茫
迷茫 2017-04-17 17:52:37
[Python讨论组]
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 会有这种书写形式?

谢谢

迷茫
迷茫

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

全部回复(2)
高洛峰

head+sum(tail) if tail else head 是一个整体

比如a if a > b else b等价于max(a, b)等价于(a>b)?a:b

这是python的语法糖,因为早期的python程序员喜欢用各种hack来实现?表达式,所以python在语法上提供了这种形式

ringa_lee

这是Python中的三元表达式

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号