python中的函數
最新
05-20
編程肯定離不開函數,用函數組織單一功能、可重用的代碼是很好的。python中使用def關鍵字開頭來定義函數,和java、C++等不一樣的地方是,python可以返回多個值給調用方,不帶return的函數相當於返回None。比如下面是定義了一個求兩數之和的函數。
函數參數
????還是用實際的例子來說吧,比用自然語言的交流更合適,更貼切。
????需要注意的是,只有在形參表末尾的那些參數可以有默認參數值,func(a=5, b)是不對的。
????在python中可以使用參數名來給函數傳遞參數,而不用擔心參數定義時的順序,這個稱之為關鍵字參數。
可變長參數
????我們有時候無法事先知道傳入參數的個數,所以需要一個可變長的參數機制來滿足這一需求,Python提供了以元組的方式來接收沒有直接定義的參數,在參數前面加*號(不是C/C++中的指針)就可以了。
????可變長參數也支持關鍵字參數,沒有被定義的參數會被放到字典裡面,這種方式用兩個**,把上面的改一下,就像下面這樣了。
強制關鍵字參數
????關鍵字參數不容易出錯,有時候我們希望強制必須使用關鍵字參數,就可以將關鍵字參數放到某個*後面,比如:
匿名函數
????像我們一個簡單的加法,還要定義一個函數,可能顯得有點麻煩,這時就可以用用lambda表達式,舉個例子就可以了。
????lambda表達式允許定義簡單的函數,但是它的使用還是很有限的,只能定義單個表達式,其值就是最後的返回值。我自己沒有用過,第一次使用是在java中,還是不太習慣,嘿嘿。
分享技術、分享生活、提升認知
TAG:劉小緒同學 |