def 函數名():? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
公司主營業(yè)務:網站設計制作、做網站、移動網站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出魯甸免費做網站回饋大家。
? ?函數體? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ?return? 返回值? ? ? ? ? ? ? ? ? ? ? ? ? ??
def 函數名(非可選參數,可選參數):
???函數體?
return 返回值
def 函數名(參數,*b):
? ? 函數體
? ? return 返回值
函數名 = lambda 參數 : 表達式
例1:f = lambda x , y? :? x + y? ? ? ? ? ? ? ? ? ? ? ??
調用:f(6 + 8)? ? ?輸出:14? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
例2:?f = lambda : "沒有參數的lambda函數!"
調用:?print(f())? ? 輸出: 沒有參數的lambda函數!
函數是組織好,可重復使用的,用來實現(xiàn)相關功能的代碼段
函數提高了代碼的重復利用率和應用的模塊性。
除Python自帶的函數之外,也可以自己創(chuàng)建函數,叫做自定義函數
語法:
函數代碼塊以 def 開頭
參數為 輸入值 ,放于函數名后口號里面,
函數內容以冒號:開始,函數體縮進, return 返回 輸出值
函數調用使用關鍵字參數來確定傳入的參數值,此時,如果多個函數則不需要按照指定順序。
在定義函數時,指定參數默認值。調用時如果不傳入參數,則使用默認值
不定長部分如果沒有指定參數,傳入是一個空元組
加了 兩個星號 ** 的參數會以字典的形式導入
/ 用來指明函數形參必須使用指定位置參數,不能使用關鍵字參數的形式。
3.8版本之后的才能使用
不使用 def 定義函數,沒有函數名
lamdba主體時一個表達式,而不是代碼塊,函數體比def簡單很多
定義在函數內部的為局部變量,僅能在函數內部使用
定義在函數外部的為全局變量,可在全局使用
模塊是將包含所有定義的函數和變量的文件,一般將同類功能的函數組和在一起稱為模塊。
模塊需要導入后,在調用相應函數進行使用
模塊導入的方法:
從模塊中導入一個指定的部分
把一個模塊的所有內容全都導入
這里來給大家演示一下,函數的定義或構造,并調用函數來實現(xiàn)封裝后的效果。
首先我們來看看想實現(xiàn)下面的這個效果,如果不使用函數應該怎么實現(xiàn)。
以上兩種返回結果都是1-9這幾個數字。
以上兩種方法,第一種代碼重復率太高,代碼美觀效果太差,雖然能實現(xiàn)效果,但是因為數量比較少,還能手工打出來這幾行代碼,如果是打印1-100000就很難實現(xiàn)了。這時候for循環(huán)還是可以實現(xiàn)的,但是for循環(huán)只能實現(xiàn)類似的數字和變量循環(huán),無法進行復雜的功能開發(fā)。鑒于此,函數這個概念就被python引入了,下面先來看看函數是怎么實現(xiàn)上面的效果的,還是兩種方法。
這時候如果想實現(xiàn)上面的打印結果就直接使用函數名+小括號調用函數就可以了,這種類型的語法,不僅可以反復使用,而且封裝后的代碼更美觀。
通過關鍵字def來創(chuàng)建函數,def的作用是實現(xiàn)python中函數的創(chuàng)建
函數定義過程:
函數名+()小括號執(zhí)行函數
函數體內對全局變量只能讀取,不能修改
局部變量,無法在函數體外使用
python 使用 lambda 來創(chuàng)建匿名函數。
所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數。