最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python的函數(shù)使用示例詳解

 更新時(shí)間:2021年12月07日 10:51:54   作者:滌生手記大數(shù)據(jù)  
在Python的函數(shù)中,我們將其分為內(nèi)置函數(shù)、自定義函數(shù)、main函數(shù)三個(gè)模塊,當(dāng)然,使用的過(guò)程中會(huì)涉及到變量以及參數(shù),這些都會(huì)舉例進(jìn)行說(shuō)明,對(duì)Python函數(shù)使用相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧

在兩種python循環(huán)語(yǔ)句的使用中,不僅僅是循環(huán)條件達(dá)到才能跳出循環(huán)體。所以,在對(duì)python函數(shù)進(jìn)行闡述之前,先對(duì)跳出循環(huán)的簡(jiǎn)單語(yǔ)句塊進(jìn)行介紹。

1 跳出循環(huán)-break

python提供了一種方便快捷的跳出循環(huán)的方法-break,示例如下,計(jì)算未知數(shù)字個(gè)數(shù)的總和:

if __name__ == "__main__":
    sum = 0
    while True:
        num = str(input('輸入的數(shù)字 (或者 "完成"): '))
        if num == '完成':
            break  #跳出循環(huán)
        sum  = num
        sum = sum + num
    print('計(jì)算總和為:' + str(sum))

這段代碼中,while的循環(huán)條件為T(mén)rue,這也就表示這段代碼將會(huì)永遠(yuǎn)循環(huán)下去,直到 break 被執(zhí)行時(shí)才會(huì)結(jié)束,也就是 num 的值為"完成"時(shí)解說(shuō)。對(duì)比之前單單使用while循環(huán),少了重復(fù)的 input 語(yǔ)句,但如果使用許多 break 也會(huì)使得代碼難以理解,所以在使用時(shí)需要視情況而定。該段代碼執(zhí)行結(jié)果如下:依照開(kāi)發(fā)經(jīng)驗(yàn)來(lái)看,除非 break 的使用使代碼更加簡(jiǎn)潔清晰,一般不會(huì)使用該語(yǔ)句。當(dāng)然,跳出循環(huán)的方法還有類(lèi)似自定義異常、封裝循環(huán)函數(shù)(多使用return)等方法,但對(duì)這些的使用一般建立在使用多了之后,在此不做過(guò)多的闡述,后面會(huì)隨著對(duì)python的深入使用進(jìn)行舉例。

另外,continue 與 break 是相關(guān)的,當(dāng)在循環(huán)體中使用continue時(shí),就會(huì)跳轉(zhuǎn)到循環(huán)條件中,進(jìn)入下一次循環(huán)。

if __name__ == "__main__":
    for i in range(3):
        for j in range(3):
            for k in range(3):
                if i == j == k == 2:
                    break
                else:
                    print(str(i) + " " + str(j) + " " + str(k))
            else:
                continue
            break
        else:
            continue
        break 

這段代碼可以簡(jiǎn)單的理解為排列組合除了i=j=k=2之外的所有情況,但也不會(huì)輸入任意i=j=k=3的組合,這是因?yàn)榇a邏輯中包含continue和break的,這么看的話(huà)是不是有些不太好理解,所以在開(kāi)發(fā)中一般不要這么使用。?

2 python函數(shù)

函數(shù),在每一種開(kāi)發(fā)語(yǔ)言的使用中都是十分重要的。它是代碼塊,可以輸入輸出,實(shí)現(xiàn)需要的功能調(diào)用,可以大量進(jìn)行復(fù)用。我們正在使用的python已經(jīng)擁有了龐大數(shù)量的功能函數(shù),這方便了我們的學(xué)習(xí)、開(kāi)發(fā)、數(shù)據(jù)分析等使用。在Python的函數(shù)中,我們將其分為內(nèi)置函數(shù)、自定義函數(shù)、main函數(shù)三個(gè)模塊,當(dāng)然,使用的過(guò)程中會(huì)涉及到變量以及參數(shù),這些都會(huì)舉例進(jìn)行說(shuō)明。

2.1 內(nèi)置函數(shù)

在之前的闡述中,我們一直使用的就是python提供的強(qiáng)大的內(nèi)置函數(shù)(Python強(qiáng)大的語(yǔ)法支持)作為示例。本次以pow()函數(shù)為例,計(jì)算3 的3次方:

>>> pow(3,3)
27

內(nèi)置函數(shù)pow()函數(shù)中,pow為函數(shù)名,兩個(gè)3是傳遞給函數(shù)的參數(shù),結(jié)果27為返回值。如下圖:

?

上圖概述了內(nèi)置函數(shù)的調(diào)用,當(dāng)我們?cè)谑褂胮ython調(diào)用函數(shù)時(shí),會(huì)將函數(shù)調(diào)用替換成為返回值。在基本的函數(shù)運(yùn)算中,我們會(huì)注意到pow(3,3)的返回值與3**3的返回值是一樣的,也就是二者可以說(shuō)是等價(jià)的關(guān)系。細(xì)節(jié)的朋友們會(huì)發(fā)現(xiàn),在python中,pow(0,0) 的值為1,同樣,0**0=1。當(dāng)然,這在實(shí)際開(kāi)發(fā)中幾乎不會(huì)用到,只是再次強(qiáng)調(diào)python函數(shù)的全面和強(qiáng)大!

在實(shí)際使用中,我們會(huì)發(fā)現(xiàn)并不是所有函數(shù)都有返回值,有些情況是沒(méi)有返回值的,下面我們舉一個(gè)簡(jiǎn)單的例子,如下:在a有賦值的時(shí)候返回值是正常的,但是在未給a賦值時(shí),其返回值是一個(gè)None,既不是字符串,也不是數(shù)字,意義就是告訴你這段代碼沒(méi)有任何返回值,需要自查BUG。(這里比較隨意,在linux環(huán)境中進(jìn)行的示例)

在使用函數(shù)時(shí),注意不要讓自己的函數(shù)與內(nèi)置函數(shù)相同,避免無(wú)意間讓內(nèi)置函數(shù)指向其它函數(shù)或者函數(shù)值,即便你使用了,python并不會(huì)提示你這個(gè)錯(cuò)誤。

這里我們讓pow指向了數(shù)字520,后面我們?cè)俅问褂檬褂胮ow()時(shí)會(huì)出現(xiàn)上圖所顯示的錯(cuò)誤。所以為了避免這種情況,需避開(kāi)名字相同的命名方式哦,但遇到了的話(huà)需要重新進(jìn)入python環(huán)境后,修改函數(shù)名,再次執(zhí)行

2.2 自定義函數(shù)

自定義函數(shù)功能是程序員在使用中經(jīng)常會(huì)用到的,因?yàn)橥ǔ?huì)根據(jù)具體需求實(shí)現(xiàn)某個(gè)邏輯的功能。舉一個(gè)簡(jiǎn)單的例子,實(shí)現(xiàn)一個(gè)計(jì)算面積的函數(shù):

import  math
 
def round_area(x):
    return math.pi * x ** 2
 
if __name__ == "__main__":
    x = int(input())
    area = round_area(x)
    print("半徑為" + str(x) +"cm的圓的面積為:"+ str(area))

對(duì)于自定義函數(shù)的使用,一般將這個(gè)功能函數(shù)保存在Python文件中,例如我們保存為practice2.py。在使用時(shí)只需調(diào)用round_area函數(shù)名,并且傳入?yún)?shù)x(對(duì)于自定義函數(shù)中的參數(shù)可有可無(wú),根據(jù)自己的需求使用)。可以向使用其他內(nèi)置函數(shù)一樣調(diào)用round_area(),差別就是你對(duì)于自定義的函數(shù)擁有絕對(duì)的控制權(quán)(任意修改)。

由上面的例子可以看出,自定義函數(shù)包含幾個(gè)規(guī)則:

1.函數(shù)以def(函數(shù)頭)關(guān)鍵詞開(kāi)頭,后接函數(shù)標(biāo)識(shí)符名稱(chēng)和圓括號(hào)();

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

3.函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn);

4.return [表達(dá)式] 結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None;

函數(shù)頭后面是可選的文檔字符串。文檔字符串簡(jiǎn)要地描繪了函數(shù)的功能,可能包含示例和其他有益的信息。雖然文檔字符串是可選的,但需要使用合理的命名: 當(dāng)你編寫(xiě)大量函數(shù)時(shí),很容易忘記它們的功能和工作原理,而寫(xiě)得好的文檔字符串可很好的讓你使用。

文檔字符串后面是函數(shù)體,這是一個(gè)縮進(jìn)的代碼塊,完成了需要的工作。在這個(gè)代碼塊中,可使用函數(shù)頭中的變量。

本實(shí)例中使用了return作為關(guān)鍵詞返回一個(gè)值,當(dāng)其執(zhí)行時(shí),Python 跳出函數(shù),并返回到調(diào)用這個(gè)函數(shù)的地方。 在自定義函數(shù)時(shí), return 語(yǔ)句通常是函數(shù)中最后被執(zhí)行的代碼,但并非是必須。

import  math
def round_area_1(x):
    print(math.pi * x ** 2)
 
if __name__ == "__main__":
    x = int(input())
    area = round_area_1(x)
    print("半徑為" + str(x) +"cm的圓的面積為:"+ str(area))

執(zhí)行結(jié)果如下:可以看到有面積結(jié)果的輸出,但是最后卻輸出了一個(gè)None值。None 用于指出函數(shù)不返回值,這是一個(gè)自定義函數(shù)不使用return語(yǔ)句帶來(lái)的副作用,但Python為消除此副作用提供了強(qiáng)大的支持(此處不做闡述,先體驗(yàn)return式自定義函數(shù)), 包含在函數(shù)中定義函數(shù)以及將函數(shù)作為值傳遞給其他函數(shù)。

2.3 main函數(shù)

如果你對(duì)多種語(yǔ)言都有所了解,那么必定知道m(xù)ain函數(shù)是一種十分普遍且必須使用的,如Java、C、C++等。Python同樣如此,當(dāng)我們?cè)诰帉?xiě)python程序時(shí),至少應(yīng)該使用一個(gè)main函數(shù)。例如在Python流程控制中的示例:

if __name__ == "__main__":
 
    while True:
        scan_user = input('please input your name: ')
        scan_pass = input('please input your passwd: ')
        if scan_pass == 'if/else':
            print('Logging on now!')
        else:
            print('your passwd is incorrect!!')
        print('我不在if/else語(yǔ)句中!')

可以改成如下。這樣所有代碼均位于函數(shù)頭main后面,且進(jìn)行了縮進(jìn),在編輯器中運(yùn)行已寫(xiě)好的 *.py 文件是,必須輸入main() 進(jìn)入代碼,開(kāi)始執(zhí)行。其優(yōu)點(diǎn)在于:可以傳參,更簡(jiǎn)單的運(yùn)行整個(gè)程序。

def main():
    scan_user = input('please input your name: ')
    scan_pass = input('please input your passwd: ')
    if scan_pass == 'if/else':
        print('Logging on now!')
    else:
        print('your passwd is incorrect!!')
    print('我不在if/else語(yǔ)句中!')

有函數(shù)的使用,就會(huì)涉及到變量和參數(shù)以及模塊,對(duì)于這三個(gè)的使用,會(huì)在下篇文章中進(jìn)行闡述。請(qǐng)有興趣的朋友先好好體會(huì)要python函數(shù)的使用。?

Python強(qiáng)大的語(yǔ)法支持

流程控制之python

到此這篇關(guān)于Python的函數(shù)使用的文章就介紹到這了,更多相關(guān)Python函數(shù)使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python計(jì)算兩個(gè)矩形框重合百分比的實(shí)例

    python計(jì)算兩個(gè)矩形框重合百分比的實(shí)例

    今天小編就為大家分享一篇python計(jì)算兩個(gè)矩形框重合百分比的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Django使用HttpResponse返回圖片并顯示的方法

    Django使用HttpResponse返回圖片并顯示的方法

    今天小編就為大家分享一篇Django使用HttpResponse返回圖片并顯示的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python將依賴(lài)和源碼打包在一起的方法

    python將依賴(lài)和源碼打包在一起的方法

    Python?項(xiàng)目在不同環(huán)境中部署時(shí),經(jīng)常會(huì)遇到安裝依賴(lài)的問(wèn)題,為了避免多個(gè)環(huán)境引起的重復(fù)勞動(dòng),可以將依賴(lài)和源碼打包在一起交付,本文就給大家詳解介紹了將依賴(lài)和源碼打包在一起的方法,需要的朋友可以參考下
    2023-06-06
  • Python中最大遞歸深度值的探討

    Python中最大遞歸深度值的探討

    今天小編就為大家分享一篇關(guān)于Python中最大遞歸深度值的探討,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 20行python代碼的入門(mén)級(jí)小游戲的詳解

    20行python代碼的入門(mén)級(jí)小游戲的詳解

    這篇文章主要介紹了python入門(mén)級(jí)小游戲,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Python Pytorch深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)

    Python Pytorch深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)

    今天小編就為大家分享一篇關(guān)于Pytorch神經(jīng)網(wǎng)絡(luò)的文章,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-10-10
  • 歸納整理Python中的控制流語(yǔ)句的知識(shí)點(diǎn)

    歸納整理Python中的控制流語(yǔ)句的知識(shí)點(diǎn)

    這篇文章主要?dú)w納整理了Python中的控制流語(yǔ)句的知識(shí)點(diǎn),來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下
    2015-04-04
  • pytorch 修改預(yù)訓(xùn)練model實(shí)例

    pytorch 修改預(yù)訓(xùn)練model實(shí)例

    今天小編就為大家分享一篇pytorch 修改預(yù)訓(xùn)練model實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • appium測(cè)試之APP元素定位及基本工具介紹

    appium測(cè)試之APP元素定位及基本工具介紹

    看了我文章了相信都了解了web端的元素定位了,沒(méi)看的,既然進(jìn)來(lái)了那么肯定多多少少知道些,本文主要來(lái)介紹APP的元素定位有哪些定位方式,我們又怎么去連接APP,然后通過(guò)工具去獲取元素
    2021-09-09
  • Python裝飾器原理與用法分析

    Python裝飾器原理與用法分析

    這篇文章主要介紹了Python裝飾器原理與用法,結(jié)合實(shí)例形式分析了Python裝飾器的概念、原理、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2018-04-04

最新評(píng)論

富源县| 江口县| 太仆寺旗| 泽库县| 来凤县| 武邑县| 新和县| 田林县| 洪洞县| 抚宁县| 文登市| 天祝| 嘉祥县| 永吉县| 蒙自县| 安义县| 河津市| 上蔡县| 蓝田县| 湟源县| 尼勒克县| 张掖市| 清水河县| 永定县| 墨竹工卡县| 巢湖市| 武义县| 鄄城县| 黎川县| 科技| 杭锦旗| 右玉县| 庆元县| 三原县| 广安市| 黎川县| 进贤县| 万荣县| 绿春县| 娱乐| 庆安县|