Python 默認參數值


Python 默認參數值,對於一些函數來說,你可能為希望使一些參數可選並使用默認的值,以避免用戶不想為他們提供值的情況。默認參數值可以有效幫助解決這一情況。你可以通過在函數定義時附加一個賦值運算符(=)來為參數指定默認參數值。

要注意到,默認參數值應該是常數。更確切地說,默認參數值應該是不可變的——這將在Python教程后面的章節中予以更詳細的解釋。就目前來說,只要記住就行了。

案例(保存為 function_default.py):

def say(message, times=1):
    print(message * times)

say('Hello')
say('World', 5)

 

輸出:

$ python function_default.py
Hello
WorldWorldWorldWorldWorld

 

它是如何工作的

名為 say 的python函數用以按照給定的次數打印一串字符串。如果我們沒有提供一個數值,則將按照默認設置,只打印一次字符串。我們通過為參數 times 指定默認參數值 1 來實現這一點。

在第一次使用 say 時,我們只提供字符串因而函數只會將這個字符串打印一次。在第二次使用 say 時,我們既提供了字符串,同時也提供了一個參數 5,聲明我們希望說(Say)這個字符串五次。

注意

只有那些位於參數列表末尾的參數才能被賦予默認參數值,意即在函數的參數列表中擁有默認參數值的參數不能位於沒有默認參數值的參數之前。

這是因為值是按參數所處的位置依次分配的。舉例來說,def func(a, b=5) 是有效的,但 def func(a=5, b) 是無效的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM