如何建立跨模組變數
正如debug 變數的流行所強調的那樣,有一個項目中跨多個模組可存取變數的實際需求。為了解決這個問題,讓我們探索一種創建具有類似跨模組功能的自訂「foo」變數的解決方案。
與 __debug__ 不同,我們的「foo」變數不需要跨模組即時全域更新。相反,在導入其他模組之前設定它的值就足夠了。
解決方案:全域模組層級變數
要建立跨模組變量,我們可以定義它作為模組層級的全域變數。這可確保一個模組內對其進行的任何修改都會反映在其他腳本對該模組的匯入中。
示例:
a.py:
<code class="python">var = 1</code>
b.py:
<code class="python">import a print(a.var) import c print(a.var)</code>
c.py:
<code class="python">import a a.var = 2</code>
1 2
執行python b.py 時,輸出將為:
這演示瞭如何修改當c.py 中的.var 共享相同的導入上下文時,它們也會影響b.py 中的值。
真實世界應用
全域模組級變數尋找在Django 等框架中的實際使用,其中設定集中儲存在global_settings.py 模組中,並可透過django .conf.settings 在整個專案中存取。以上是如何在 Python 中實作跨模組變數:實用指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!