亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

求解,這是什么意思

# OK:def fn1(a, b=1, c=2):
? ?pass

# Error:def fn2(a=1, b):
? ?pass

正在回答

2 回答

fn函數的意思就是說接受傳入的數據。

如果只傳入一個如:fn(1)那么就使的a=1,b=1,c=2。

如果傳入多個如:fn(1,10,9)那么就是a=1,b=10,c=9。

而這種定義函數的方式中,默認數據必須寫在定義數據的后面,所以第2種寫法應該是fn2(b,a=1),其中a是默認數據,寫在了b這個定義數據的后面

1 回復 有任何疑惑可以回復我~
#1

heinz9913 提問者

非常感謝!
2018-02-12 回復 有任何疑惑可以回復我~

(直接引用別人的解釋)由于函數的參數按從左到右的順序匹配,所以默認參數只能定義在必需參數的后面:

上面那句話的中 所謂 必須參數 的意思就是 fn1中的a, fn2 中的b.?

而默認參數 就是fn1 中的 b=1, c=2 , fn2 中的 a=1.

解釋的很清楚了,所以fn2函數參數定義順序錯誤!


0 回復 有任何疑惑可以回復我~
#1

heinz9913 提問者

多謝多謝
2018-02-12 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758392    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

求解,這是什么意思

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號