看板 Python 關於我們 聯絡資訊
我有一個函式長這樣: 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
swpoker:Condition=False無誤阿 06/26 09:09
swpoker:Printrer(1,True) or Printer(Condition=True) 06/26 09:09
Serenity9078:但是我Num不是已經預設是1嗎,為什麼Printer(True)不 06/26 09:23
Serenity9078:等於Printer(True)?? 06/26 09:23
Serenity9078:是為什麼不等於Printer(1,True) 06/26 09:24
swpoker:參數不是陣列(排序)就是key-value阿 06/26 09:25
Serenity9078:有點不懂,可以解釋一下嗎@@ 謝謝! 06/26 09:29
tjjh89017:要嘛就是按找順序放,如果少放幾個,"後面"會比上沒有填 06/26 10:50
tjjh89017:入的預設值,要嘛就是跟他說是哪一個param 06/26 10:50
tjjh89017:對他來說 Printer(True) 等效 06/26 10:51
tjjh89017:Printer(Num=True, Condition=False) 06/26 10:51
Serenity9078:哦瞭解了!!謝謝~~ 06/26 16:50
Prius:在第2行加上 print("Num=",Num,"; Condition=",Condition) 07/06 21:43
Prius:一目了然 07/06 21:43