看板 Python 關於我們 聯絡資訊
大家好 小弟以前只學過C++ 最近學Python有些問題想問 像這樣的程式 if 1==1: a = 10 print a 結果會顯示10 但在小弟的觀念裡面 a是屬於if這個區塊的local變數 所以在外面print不出來 應該會出現error才對 但卻不是如此 請問為什麼會這樣呢?是否有什麼Python的關鍵特性小弟應該認識的? 謝謝各位大大! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.166.197.179
kdjf:if 是 statment, 不是function, function才會有local var 07/13 15:28
ya790206:The following are blocks: a module, a function body, 07/13 15:29
ya790206:, and a class definition.所以if沒有block 07/13 15:30
poopoo888888:原來如此 原來不同語言看待block的方式有差 07/13 23:43
poopoo888888:謝謝兩位大大! 07/13 23:43