函數(shù)是組織好,可重復(fù)使用的,用來實現(xiàn)相關(guān)功能的代碼段
創(chuàng)新互聯(lián)專注于滕州企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),商城系統(tǒng)網(wǎng)站開發(fā)。滕州網(wǎng)站建設(shè)公司,為滕州等地區(qū)提供建站服務(wù)。全流程定制開發(fā),專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
函數(shù)提高了代碼的重復(fù)利用率和應(yīng)用的模塊性。
除Python自帶的函數(shù)之外,也可以自己創(chuàng)建函數(shù),叫做自定義函數(shù)
語法:
函數(shù)代碼塊以 def 開頭
參數(shù)為 輸入值 ,放于函數(shù)名后口號里面,
函數(shù)內(nèi)容以冒號:開始,函數(shù)體縮進, return 返回 輸出值
函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值,此時,如果多個函數(shù)則不需要按照指定順序。
在定義函數(shù)時,指定參數(shù)默認值。調(diào)用時如果不傳入?yún)?shù),則使用默認值
不定長部分如果沒有指定參數(shù),傳入是一個空元組
加了 兩個星號 ** 的參數(shù)會以字典的形式導(dǎo)入
/ 用來指明函數(shù)形參必須使用指定位置參數(shù),不能使用關(guān)鍵字參數(shù)的形式。
3.8版本之后的才能使用
不使用 def 定義函數(shù),沒有函數(shù)名
lamdba主體時一個表達式,而不是代碼塊,函數(shù)體比def簡單很多
定義在函數(shù)內(nèi)部的為局部變量,僅能在函數(shù)內(nèi)部使用
定義在函數(shù)外部的為全局變量,可在全局使用
模塊是將包含所有定義的函數(shù)和變量的文件,一般將同類功能的函數(shù)組和在一起稱為模塊。
模塊需要導(dǎo)入后,在調(diào)用相應(yīng)函數(shù)進行使用
模塊導(dǎo)入的方法:
從模塊中導(dǎo)入一個指定的部分
把一個模塊的所有內(nèi)容全都導(dǎo)入
定義:
def 函數(shù)名(形參1,形參2='初始定義的內(nèi)容'):
函數(shù)中執(zhí)行的內(nèi)容
調(diào)用:
函數(shù)名(實參1)或函數(shù)名(形參2=實參2,形參1=實參1)或函數(shù)名(實參1,實參2)
這里來給大家演示一下,函數(shù)的定義或構(gòu)造,并調(diào)用函數(shù)來實現(xiàn)封裝后的效果。
首先我們來看看想實現(xiàn)下面的這個效果,如果不使用函數(shù)應(yīng)該怎么實現(xiàn)。
以上兩種返回結(jié)果都是1-9這幾個數(shù)字。
以上兩種方法,第一種代碼重復(fù)率太高,代碼美觀效果太差,雖然能實現(xiàn)效果,但是因為數(shù)量比較少,還能手工打出來這幾行代碼,如果是打印1-100000就很難實現(xiàn)了。這時候for循環(huán)還是可以實現(xiàn)的,但是for循環(huán)只能實現(xiàn)類似的數(shù)字和變量循環(huán),無法進行復(fù)雜的功能開發(fā)。鑒于此,函數(shù)這個概念就被python引入了,下面先來看看函數(shù)是怎么實現(xiàn)上面的效果的,還是兩種方法。
這時候如果想實現(xiàn)上面的打印結(jié)果就直接使用函數(shù)名+小括號調(diào)用函數(shù)就可以了,這種類型的語法,不僅可以反復(fù)使用,而且封裝后的代碼更美觀。
python中定義函數(shù)的關(guān)鍵字是def。
Python使用def關(guān)鍵字開始函數(shù)定義,緊接著是函數(shù)名,括號內(nèi)部為函數(shù)的參數(shù),內(nèi)部為函數(shù)的具體功能實現(xiàn)代碼,如果想要函數(shù)有返回值, 在expressions中的邏輯代碼中用return返回。
上面我們定義了一個名字為 function 的函數(shù),函數(shù)沒有不接受參數(shù),所以括號內(nèi)部為空,緊接著就是 函數(shù)的功能代碼。
如果執(zhí)行該腳本,發(fā)現(xiàn)并沒有輸出任何輸出,因為我們只定義了函數(shù),而并沒有執(zhí)行函數(shù)。 這時我們在Python命令提示符中輸入函數(shù)調(diào)用 function(), 注意這里調(diào)用函數(shù)的括號不能省略。
python的學(xué)習(xí)
如果我們用代碼實現(xiàn)了一個小功能,但想要在程序代碼中重復(fù)使用,不能在代碼中到處粘貼這些代碼,因為這樣做違反了軟件工程中DRY原則。 Python提供了函數(shù)功能,可以將我們這部分功能抽象成一個函數(shù)以方便程序調(diào)用,或者提供給其他模塊使用。
函數(shù)是組織好的,可重復(fù)使用的,用來實現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。(推薦學(xué)習(xí):Python視頻教程)函數(shù)必須先定義,才能調(diào)用,否則會報錯,無參數(shù)時函數(shù)的調(diào)用函數(shù)名()。
有參數(shù)時函數(shù)的調(diào),不要在定義函數(shù)的時候在函數(shù)體里面調(diào)用本身,否則會出不來,陷入循環(huán)調(diào)用,函數(shù)需要調(diào)用函數(shù)體才會被執(zhí)行,單純的只是定義函數(shù)是不會被執(zhí)行的。
新聞名稱:python開發(fā)函數(shù)定義 Python中函數(shù)的定義
轉(zhuǎn)載源于:http://chinadenli.net/article42/hpeghc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、搜索引擎優(yōu)化、網(wǎng)站策劃、做網(wǎng)站、域名注冊、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)