作者Serenity9078 (Serenity9078)
看板Python
標題[問題] 新手請教函式的問題
時間Wed Jun 26 09:00:49 2013
我有一個函式長這樣:
def Printer(Num=1,Condition=False):
if Condition:
for i in range(Num):
print("Hello")
而我在執行下列指令 Printer(True) 後
我原本預期畫面會印出一次的 Hello,但實際上卻什麼都沒有發生
請問問題是出在哪裡呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.168.197
1F:→ swpoker:Condition=False無誤阿 06/26 09:09
2F:→ swpoker:Printrer(1,True) or Printer(Condition=True) 06/26 09:09
3F:→ Serenity9078:但是我Num不是已經預設是1嗎,為什麼Printer(True)不 06/26 09:23
4F:→ Serenity9078:等於Printer(True)?? 06/26 09:23
5F:→ Serenity9078:是為什麼不等於Printer(1,True) 06/26 09:24
6F:→ swpoker:參數不是陣列(排序)就是key-value阿 06/26 09:25
7F:→ Serenity9078:有點不懂,可以解釋一下嗎@@ 謝謝! 06/26 09:29
8F:→ tjjh89017:要嘛就是按找順序放,如果少放幾個,"後面"會比上沒有填 06/26 10:50
9F:→ tjjh89017:入的預設值,要嘛就是跟他說是哪一個param 06/26 10:50
10F:→ tjjh89017:對他來說 Printer(True) 等效 06/26 10:51
11F:→ tjjh89017:Printer(Num=True, Condition=False) 06/26 10:51
12F:→ Serenity9078:哦瞭解了!!謝謝~~ 06/26 16:50
13F:→ Prius:在第2行加上 print("Num=",Num,"; Condition=",Condition) 07/06 21:43
14F:→ Prius:一目了然 07/06 21:43