看板 Python 關於我們 聯絡資訊
不好意思,最近問得有點勤... 這些問題都可以解決,但就是覺得一定有更好的方法.. 由於python是script語言,因為會從程式檔案的最上面一直往下執行 但我習慣把一些很長的函式放在檔案最下面, 但如此一來就會遇到此函式無定義的問題.. 有什麼方法可以達到我我要求又可以順利執行的嗎,謝謝 ex: if __name__ == '__main__': long_fun() long_fun(): ... 就像這樣,由於long_fun()裡面有好幾百行,想放在最下面 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.185.171
ya790206:有個很愚蠢的方法,有沒有副作用我不知道,假設檔名叫 08/21 18:29
ya790206:z.py 你就在檔案最前面加from z import * 08/21 18:30
hukhuk:這跟script沒關係吧,你用functional programming的寫法 08/21 18:34
hukhuk:當然會無法執行,你用c寫,這也不會給你過…個人見解 08/21 18:35
tumc:from z import , 是把自己import進去嗎? 08/21 19:32
tumc:我知道會無法執行,所以才問有無辦法..perl是可以這樣的 08/21 19:33
ya790206:我試可以耶,你要把後面才出現的東西都包在 08/21 19:50
ya790206:if __name__ == '__main__': 裡面,不過我測試時long_fun 08/21 19:51
ya790206:的內容很簡單就只是print 'x'而已,應該不會影響吧 08/21 19:52
ya790206:對了我版本是2.6 08/21 19:52
ya790206:from z import , 是把自己import進去嗎? 是的 08/21 19:54
ya790206:這樣做程式碼執行順序會改變,先執行long在執行if最後再 08/21 19:57
ya790206:執行long部分 08/21 19:57
ya790206:上兩樓我的推文,用詞不佳,會有誤解.... 08/21 19:59
ya790206:請忽略 08/21 20:00
wadd:如果是我,我會把這個 fun 寫在另一個檔,再 import 進來 08/21 20:54
Starwindd:推寫在另一個檔 08/22 00:57
tumc:看來也沒有其它方法了...由於是獨立的script,不想拆才兩個檔 08/23 11:36
tumc:可能就用import 自己 , 有遇到問題再跟大家報告,謝謝 08/23 11:37