如何理解Python cook book中的一段代码
迷茫
迷茫 2017-04-17 17:52:37
0
2
340
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 是一個整體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中的三元表達式

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板