python函數(shù)

在開發(fā)程序時(shí),又是會(huì)用到一段代碼多次,但是一遍一遍敲會(huì)很麻煩,那么就可以用函數(shù)把這段代碼打包起來(lái),后面只需要調(diào)用函數(shù)就可以實(shí)現(xiàn)代碼的功能,python中提供了許多內(nèi)建函數(shù),比如print(),函數(shù)也可以自定義,就是自己打包一段自己寫的代碼,在之后的開發(fā)中重復(fù)使用。

  • 函數(shù)的使用分兩部分:

    定義函數(shù):封裝 獨(dú)立的功能
    調(diào)用函數(shù):享受 封裝 的成果

    • 定義函數(shù)的格式:

    def 函數(shù)的名稱():
      需要打包的代碼

    • 定義完函數(shù)后只需要調(diào)用就好了

    直接輸入  函數(shù)名():  就可以調(diào)用

    注意:函數(shù)的定義必須在函數(shù)調(diào)用的上方,代碼是從上往下執(zhí)行的,必須要讓函數(shù)先存在,才能調(diào)用,否則程序會(huì)報(bào)錯(cuò)!
  • 函數(shù)的參數(shù)

    在定義函數(shù)時(shí),可以看到我們?cè)诤瘮?shù)名后面輸入了一個(gè)小括號(hào),這個(gè)小括號(hào)就是用來(lái)傳參數(shù)的,參數(shù)就是函數(shù)中的變量,可以增加函數(shù)的可用性。

    函數(shù)分形參和實(shí)參:

    形參——定義 函數(shù)時(shí),小括號(hào)中的參數(shù),是用來(lái)接收參數(shù)用的,在函數(shù)內(nèi)部 作為變量使用
    實(shí)參——調(diào)用 函數(shù)時(shí),小括號(hào)中的參數(shù),是用來(lái)把數(shù)據(jù)傳遞到 函數(shù)內(nèi)部 用的

    a,b為參數(shù)
    直接以a,b的值運(yùn)算
  • 函數(shù)的返回值

    return語(yǔ)句表示在執(zhí)行完函數(shù)后會(huì)給調(diào)用者返回一個(gè)結(jié)果,并退出函數(shù),不帶參數(shù)值的return語(yǔ)句返回None,在調(diào)用函數(shù)時(shí),需要一個(gè)變量來(lái)接受返回的結(jié)果。

    舉個(gè)栗子,還是求和:

    代碼如下

    def back(a,b):
      return a+b
    sum = back(1,2)
    print(sum)

    一樣可以達(dá)到求和的效果
    • 函數(shù)根據(jù)有無(wú)返回值,有無(wú)參數(shù)可分為四種:

      1.無(wú)參數(shù),無(wú)返回值
      2.無(wú)參數(shù),有返回值
      3.有參數(shù),無(wú)返回值
      4.有參數(shù),有返回值
  • 函數(shù)嵌套

    函數(shù)嵌套即為在函數(shù)中調(diào)用其他函數(shù)
    使用函數(shù)嵌套時(shí),代碼在調(diào)用 函數(shù)1 時(shí)遇到調(diào)用 函數(shù)2 就會(huì)先執(zhí)行完 函數(shù)2 的代碼才會(huì)繼續(xù)執(zhí)行 函數(shù)1 的代碼。

    先運(yùn)行1后運(yùn)行2
  • 函數(shù)的全局變量和局部變量

    變量起作用的代碼范圍稱為變量的作用域,不同作用域內(nèi)同名變量之間互不影響就像不同文件夾的同名文件間互不影響一樣。一個(gè)變量在函數(shù)外部定義和在內(nèi)部定義,其作用域是不同的,函數(shù)內(nèi)部定義的變量一般稱為局部變量在函數(shù)外部定義的變量一般稱為去全局變量。

    局部變量
    • 局部變量,就是函數(shù)內(nèi)部定義的變量
    • 不同的函數(shù),可以定義相同的名字的局部變量,但是各用個(gè)的互不影響
    • 局部變量的作用,為了臨時(shí)保存數(shù)據(jù)需要在函數(shù)中定義變量來(lái)進(jìn)行存儲(chǔ),這就是他的作用

    在函數(shù)內(nèi)部定義的普通變量值在該函數(shù)內(nèi)起作用,當(dāng)函數(shù)運(yùn)行結(jié)束后,在其內(nèi)部定義的局部變量將被自動(dòng)刪除而不可訪問(wèn)。在函數(shù)內(nèi)部定義的全局變量當(dāng)函數(shù)結(jié)束后仍然存在并且可以訪問(wèn)

    全局變量
    • 如果一個(gè)變量,既能在一個(gè)函數(shù)中使用,也能在其他函數(shù)中使用,這樣的變量就是全局變量
    在函數(shù)中修改全局變量

    1、在函數(shù)外邊定義的變量叫做全局變量
    2、全局變量能夠在所有的函數(shù)中進(jìn)行訪問(wèn)
    4、如果在函數(shù)中修改全局變量,那么就需要使用global進(jìn)行聲明,否則出錯(cuò)
    5、如果全局變量的名字和局部變量的名字相同,那么使用的是局部變量的,強(qiáng)龍不壓地頭蛇

    1、在函數(shù)中不使用global聲明全局變量時(shí)不能修改全局變量的本質(zhì)是不能修改全局變量的指向,即不能將全局變量指向新的數(shù)據(jù)。
    2、對(duì)于不可變類型的全局變量來(lái)說(shuō),因其指向的數(shù)據(jù)不能修改,所以不使用global時(shí)無(wú)法修改全局變量。
    3、對(duì)于可變類型的全局變量來(lái)說(shuō),因其指向的數(shù)據(jù)可以修改,所以不使用global時(shí)也可修改全局變量。

美女鎮(zhèn)樓?。。?!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第2章 基本語(yǔ)法 2.1 概述 基本句法和變量 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,556評(píng)論 0 13
  • 一、首先什么是函數(shù)? 如果在開發(fā)程序時(shí),需要某塊代碼多次,但是為了提高編寫的效率以及代碼的重用,所以把具有獨(dú)立功能...
    zxx_emmm閱讀 967評(píng)論 4 6
  • 本文翻譯自Functional Programming Howto 本文將介紹Python中函數(shù)式編程的特性。在對(duì)...
    大蟒傳奇閱讀 2,755評(píng)論 4 14
  • 若你的睡眠時(shí)間 不是因?yàn)槔Ь?而是因?yàn)榱?xí)慣 那入睡前一定不要思考 因?yàn)橐坏┥钕?此時(shí)的你 會(huì)比任何時(shí)候都清醒 萬(wàn)籟...
    蝸牛sister閱讀 634評(píng)論 0 5
  • 小編導(dǎo)讀 說(shuō)起補(bǔ)血,似乎天下每個(gè)女人都有需求,你看,她們或吃紅棗,或用阿膠,尤其在經(jīng)期、孕期,她們更是注重補(bǔ)血了!...
    閱讀中醫(yī)閱讀 352評(píng)論 0 1

友情鏈接更多精彩內(nèi)容