溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python為什么調(diào)用函數(shù)失敗

發(fā)布時(shí)間:2020-09-23 13:54:14 來(lái)源:億速云 閱讀:755 作者:Leah 欄目:編程語(yǔ)言

本篇文章給大家分享的是有關(guān)python為什么調(diào)用函數(shù)失敗,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

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

Python內(nèi)置了很多有用的函數(shù),我們可以直接調(diào)用。

要調(diào)用一個(gè)函數(shù),需要知道函數(shù)的名稱和參數(shù),比如求絕對(duì)值的函數(shù)abs,只有一個(gè)參數(shù)。

也可以在交互式命令行通過(guò)help(abs)查看abs函數(shù)的幫助信息。

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

>>> abs(100)
100
>>> abs(-20)
20
>>> abs(12.34)
12.34

調(diào)用函數(shù)的時(shí)候,如果傳入的參數(shù)數(shù)量不對(duì),會(huì)報(bào)TypeError的錯(cuò)誤,并且Python會(huì)明確地告訴你:abs()有且僅有1個(gè)參數(shù),但給出了兩個(gè):

>>> abs(1, 2)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: abs() takes exactly one argument (2 given)

如果傳入的參數(shù)數(shù)量是對(duì)的,但參數(shù)類型不能被函數(shù)所接受,也會(huì)報(bào)TypeError的錯(cuò)誤,并且給出錯(cuò)誤信息:str是錯(cuò)誤的參數(shù)類型:

>>> abs('a')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: bad operand type for abs(): 'str'

而max函數(shù)max()可以接收任意多個(gè)參數(shù),并返回最大的那個(gè):

>>> max(1, 2)
2
>>> max(2, 3, 1, -5)
3

二、定義函數(shù)

在Python中,定義一個(gè)函數(shù)要使用def語(yǔ)句,依次寫出函數(shù)名、括號(hào)、括號(hào)中的參數(shù)和冒號(hào):,然后,在縮進(jìn)塊中編寫函數(shù)體,函數(shù)的返回值用return語(yǔ)句返回。

我們以自定義一個(gè)求絕對(duì)值的my_abs函數(shù)為例:

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

請(qǐng)自行測(cè)試并調(diào)用my_abs看看返回結(jié)果是否正確。

請(qǐng)注意,函數(shù)體內(nèi)部的語(yǔ)句在執(zhí)行時(shí),一旦執(zhí)行到return時(shí),函數(shù)就執(zhí)行完畢,并將結(jié)果返回。因此,函數(shù)內(nèi)部通過(guò)條件判斷和循環(huán)可以實(shí)現(xiàn)非常復(fù)雜的邏輯。

如果沒有return語(yǔ)句,函數(shù)執(zhí)行完畢后也會(huì)返回結(jié)果,只是結(jié)果為None。

return None可以簡(jiǎn)寫為return。

在Python交互環(huán)境中定義函數(shù)時(shí),注意Python會(huì)出現(xiàn)...的提示。函數(shù)定義結(jié)束后需要按兩次回車重新回到>>>提示符下:

如果你已經(jīng)把my_abs()的函數(shù)定義保存為abstest.py文件了,那么,可以在該文件的當(dāng)前目錄下啟動(dòng)Python解釋器,用from abstest import my_abs來(lái)導(dǎo)入my_abs()函數(shù),注意abstest是文件名(不含.py擴(kuò)展名):

以上就是python為什么調(diào)用函數(shù)失敗,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI