以下是一些適合本文的基於問題的標題: * 如何在Python中實作跨模組變數而不使用全域作用域? * 用自訂 C 取代 Python 的'__debug__”

Susan Sarandon
發布: 2024-10-27 16:42:02
原創
406 人瀏覽過

Here are some question-based titles that fit the article:

* How to Achieve Cross-Module Variables in Python Without Using a Global Scope?
* Replacing Python's

在沒有全域作用域的情況下實作跨模組變數

在Python中,__debug__變數是跨所有模組的便利工具。為了複製其優點,可以建立名為 foo 的自訂變數來實現類似的功能。然而,與 __debug__ 不同, foo 不需要是真正的全域變量,甚至可以在導入連結模組之前設定它的值。

要實現這一點,一個簡單的全域模組級變數就可以了。以下是一個範例:

# a.py
var = 1
登入後複製
# b.py
import a
print(a.var)
import c
print(a.var)
登入後複製
# c.py
import a
a.var = 2
登入後複製

當作為 python b.py 執行時,輸出為 1 2,示範了 var 跨模組的通用可見性。

這種方法在 Django 的 global_settings.py 等場景中證明是有用的,其中透過導入的物件 django.conf.settings 存取設定。

以上是以下是一些適合本文的基於問題的標題: * 如何在Python中實作跨模組變數而不使用全域作用域? * 用自訂 C 取代 Python 的'__debug__”的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!