※ 引述《apua (Apua=A__A)》之銘言:
: 我現在寫 python 的習慣是直觀的, 想要什麼就寫什麼
: 但最近看到很多 python 的程式碼都會寫成:
: if __name__=='__main__':
: ...........
: ..........
: ...........
: 的形式。
: __name__ 不是本來就是字串 '__main__' 嗎?為何要多此一舉呢?
: 還是說在什麼樣的情況底下, __name__ != '__main__' ?
那個的意思是,當此module被直接執行時,就運行這段程式碼
通常用來測試用
__name__ 因為被import而執行時是 它module的名字
__name__ 被執接執行時是 "__main__"
差別就在這裡,因為有很多module通常是寫給別人import用的
但是我們如果直接執行這個module表示想測試看看這個module
所以用這個技巧,就能讓這個module知道自己是不是被直接執行
如果直接執行,那判斷式裡放的通常都是測試用的程式碼
又或著,當成console的命令提示字元方式 由sys.argv傳參數
來執行特定功能的也有
--
VICTOR工作室 | PTT遊戲設計版隆重開幕!
| 不管是新手老手,程式美工音樂企劃....
URL : http://www.kinmen.info/vic/ | 都歡迎來遊戲設計版參與討論 XD
| 戰略高手>
C/C++ | GameTopics>
Visual Basic 6.0 | GameDesign
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.231.208.121