免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Python入門基礎怎么定義函數(shù),函數(shù)調(diào)用,函數(shù)傳遞參數(shù),匿名函數(shù)

什么是函數(shù)和為什么要用函數(shù)?

  • 函數(shù)是組織好的,可重復使用的,用來實現(xiàn)單一,或相關聯(lián)功能的代碼段。

  • 函數(shù)能提高應用的模塊性,和代碼的重復利用率。

  • 已經(jīng)知道Python提供了許多內(nèi)建函數(shù),比如print。

  • 但你也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。

如果不用函數(shù),會怎么樣?

如果沒有函數(shù),代碼就會從上往下執(zhí)行全部執(zhí)行。

函數(shù)沒有調(diào)用的時候,它不會自己執(zhí)行的。

  • 比如你去購物網(wǎng)站買東西,網(wǎng)站沒有用函數(shù)。

  • 你打開他們的首頁,然后后臺的代碼從上往下執(zhí)行。

  • 一個項目中有多少功能,多少代碼量。

  • 當打開首頁需要話費5分鐘,搜索商品又要花費 5分鐘,你以后肯定不去這個網(wǎng)站購物了。

  • 本來網(wǎng)站首頁只需要調(diào)用一個函數(shù)就可以了,搜索商品頁面也是一個函數(shù)。這樣兩個頁面前后打開加起來也就幾秒的事。

定義一個函數(shù)

你可以定義一個由自己想要功能的函數(shù),以下是簡單的規(guī)則:

  • 函數(shù)代碼塊以def關鍵詞開頭,后面依次寫出函數(shù)名、括號、括號中的參數(shù)和冒號。

  • 任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)。

  • 函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。

  • 函數(shù)內(nèi)容以冒號起始,在縮進塊中編寫函數(shù)體。

  • return 表達式結束函數(shù),選擇性地返回一個值給調(diào)用方。不帶表達式的return相當于返回 None。

  • 只要有return 表達式后面的代碼都不會再執(zhí)行。

語法

Python 定義函數(shù)使用 def 關鍵字,一般格式如下:

函數(shù)調(diào)用

定義一個函數(shù),給了函數(shù)一個名稱,指定了函數(shù)里包含的參數(shù),和代碼塊結構。

函數(shù)調(diào)用格式:函數(shù)名

參數(shù)傳遞

在 python 中,類型屬于對象,變量是沒有類型的。

參數(shù)可以看作鑰匙,函數(shù)是門,多個參數(shù)就是多把 鑰匙,開門需要鑰匙。

定義函數(shù)的時候,我們把參數(shù)的名字和位置確定下來。

對于函數(shù)的調(diào)用者來說,只需要知道如何傳遞正確的參數(shù),以及函數(shù)將返回什么樣的值就夠了。

函數(shù)內(nèi)部的復雜邏輯被封裝起來,調(diào)用者無需了解。

Python的函數(shù)定義非常簡單,但靈活度卻非常大。

除了空參數(shù)和正常定義的必選參數(shù)外,還可以使用默認參數(shù)、可變參數(shù)和關鍵字參數(shù)。以下是調(diào)用函數(shù)時可使用的正式參數(shù)類型:

  • 空參數(shù)

  • 必需參數(shù)

  • 默認參數(shù)

  • 不定長參數(shù)

空參數(shù)

必需參數(shù)

必需參數(shù)必須傳入函數(shù)。調(diào)用時的數(shù)量必須和聲明時的一樣。

如果不傳參數(shù),會報錯。門需要鑰匙開門,沒帶鑰匙怎么可以打開。

默認參數(shù)

調(diào)用函數(shù)時,如果沒有傳遞參數(shù),則會使用默認參數(shù)。

輸出結果:參數(shù)num,str='求平方的值',調(diào)用函數(shù)只傳一個參數(shù)5,其實程序自己把默認值str='求平方的值'也傳入了,我們看不到而已。

調(diào)用函數(shù)時,修改默認值。

輸出結果:

不定長參數(shù)

定義出這個函數(shù),我們必須確定輸入的參數(shù)。由于參數(shù)個數(shù)不確定,你可能需要一個函數(shù)能處理比當初聲明時更多的參數(shù)。這些參數(shù)叫做不定長參數(shù),和上述 2 種參數(shù)不同,聲明時不會命名。

加了星號*的參數(shù)會以元組(tuple)的形式導入,存放所有未命名的變量參數(shù)。

如果在函數(shù)調(diào)用時沒有指定參數(shù),它就是一個空元組。我們也可以不向函數(shù)傳遞未命名的變量。

輸出結果:

傳入多個參數(shù)輸出結果:

函數(shù)一個必須參數(shù)和一個可變的元組參數(shù)。傳入3個參數(shù)減去一個必須參數(shù),剩下的2個參數(shù)都放到可變的元組參數(shù)中,所以不定長參數(shù)有兩個元素。

加了兩個星號**的參數(shù)會以字典的形式導入。

如果在函數(shù)調(diào)用時沒有指定參數(shù),它就是一個空字典。我們也可以不向函數(shù)傳遞未命名的變量。

輸出結果:

傳入?yún)?shù)輸出結果:

兩個星號**的參數(shù)會把賦值形式的參數(shù)變?yōu)樽值湫问健?/p>

組合參數(shù):

  • 參數(shù)定義的順序必須是:必選參數(shù)、默認參數(shù)、可變參數(shù)。

輸出結果:

change('名字',12,'元組',sex='男',ad='地址'),一個必須參數(shù)name對應名字,默認參數(shù)值1被傳遞的第二個參數(shù)12替換。第三個參數(shù)歸類到一個星號的元組參數(shù),如果沒有碰到sex='男'這樣的參數(shù),后面的參數(shù)都會歸類到一個星號的元組參數(shù)。

直到碰到類似sex='男'這樣的賦值語句,它才會歸類到兩個星號的字典參數(shù)。例子:

輸出結果:看到這里又有疑問{'a':1,'b':'c'}不是字典,怎么會歸類到元組。

要記住一個原則,碰到賦值形式的語句才歸類到兩個星號的字典參數(shù)。把{'a':1,'b':'c'}改一下。

輸出結果:把{'a':1,'b':'c'}賦值給dict。

return語句

return語句用于退出函數(shù),選擇性地向調(diào)用方返回一個表達式。沒有return語句默認返回None。

函數(shù)返回多個值,是以元組的形式,注意用逗號隔開。

輸出結果:

匿名函數(shù)python 使用 lambda 來創(chuàng)建匿名函數(shù)。

所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數(shù)。

  • lambda 只是一個表達式,函數(shù)體比 def 簡單很多。

  • lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。

lambda 函數(shù)的語法只包含一個語句:

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python lambda函數(shù)的用法
說說Python中的lambda表達式?
Python函數(shù)里的4個小花招
寫 Python 代碼不可不知的函數(shù)式編程技術
Python基礎【函數(shù)】
python中的lambda表達式
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服