簡體   English   中英

Python導入掛鈎和__main__

[英]Python Import Hooks and __main__

PEP 302定義了一種讓用戶代碼掛接到導入過程並攔截導入的方法。

但是,這僅適用於某些代碼運行后注冊導入掛鈎之后發生的導入。

根據定義,幾乎沒有代碼在__main__模塊之前運行,該__main__是最初運行的腳本。 我沒有運氣試圖獲取我的導入鈎子(它做一些有用的事情)來攔截為__main__模塊加載的代碼。

有什么辦法可以讓我丟失,或者我只是運氣不好? 我可以接受讓我的導入掛鈎不在__main__模塊上執行其轉換的方法,但是如果這樣做了,那就太好了。

您是否嘗試過像這樣在main內部導入?

if __name__ == '__main__':
    import foo
    # Rest of code here

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM