編程學習網 > 編程語言 > Python > Python基礎——如何定義和調用函數教程
2023
09-16

Python基礎——如何定義和調用函數教程

函數類似于其他語言,Python中的函數使用小括號(())調用。函數在調用之前必須先定義。如果函數中沒有return語句,就會自動返回None對象。


Python是通過引用調用的。這意味著函數內對參數的改變會影響到原始對象。不過事實上只有可變對象會受此影響,對不可變對象來說,它的行為類似按值調用。

 如何定義函數

def  function_name([arguments]):
"optional documentation string"
function_suite

定義一個函數的語法由def關鍵字及緊隨其后的函數名,再加上該函數需要的幾個參數組成。函數參數(比較上面例子中的arguments)是可選的,這也是為什么把它們放到中括號中的原因。(在你的代碼里千萬別寫上中括號?。┻@個語句由一個冒號(:)結束(與if和while語句的結束方式一樣),之后是代表函數體的代碼組,下面是一個簡短的例子。

def addMe(x):
    'apply + operation to argument'
    return ( x + x)

這個函數,做的是“在我的值上加我”的工作。它接受一個對象,將它的值加到自身,然后返回和。對于數值類型參數,它的結果是顯而易見的,不過我要在這里指出,加號操作符幾乎與所有數據類型工作。換句話說,幾乎所有的標準數據類型都支持+操作符,不管是數值相加還是序列合并。

 如何調用函數

>>> addMe2Me(4.25)
8.5
>>>
>>> addMe2Me(10)
20
>>>
>> addMe2Me('Python')
' Pythonpython '
>>>
>>> addMe2Me([-1, 'abc'])
[-1,'abc',-1,'abc']

Python語言中調用函數與在其他高級語言中一樣,為函數名加上函數操作符——一對小括號。括號之間是所有可選的參數。即使一個參數也沒有,小括號也不能省略。注意一下,+操作符在非數值類型中如何工作。

 默認參數

函數的參數可以有一個默認值,如果提供有默認值,在函數定義中,參數以賦值語句的形式提供。事實上這僅僅是提供默認參數的語法,它表示函數調用時如果沒有提供這個參數,它就取這個值作為默認值。

>>> def foo(debug=True):
...    'determine if in debug mode with default argument'
...    if debug:
...      print 'in debug mode'
...    print 'done'
...
>>> foo()
in debug mode
done
>>> foo(False)
done

在上面的例子里,debug參數有一個默認值True。如果我們沒有傳遞參數給函數foo(), debug自動拿到一個值True。在第二次調用foo()時,我們故意傳遞一個參數False給foo(),這樣,默認參數就沒有被使用。函數擁有的特性遠比我們在這里介紹的多,后續會持續分享更詳細的函數的信息。

以上就是Python基礎——如何定義和調用函數教程的詳細內容,想要了解更多Python教程歡迎持續關注編程學習網。

掃碼二維碼 獲取免費視頻學習資料

Python編程學習

查 看2022高級編程視頻教程免費獲取