Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erreicht man modulübergreifendes Variablenverhalten in Python?

Wie erreicht man modulübergreifendes Variablenverhalten in Python?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-27 20:10:02375Durchsuche

How to Achieve Cross-Module Variable Behavior in Python?

Modulübergreifende Variable in Python

In Python ist die Variable __debug__ eine praktische globale Variable, die in allen Modulen verfügbar ist. Das Erstellen einer anderen Variablen mit ähnlichem Verhalten erfordert jedoch einen anderen Ansatz. So erreichen Sie dies:

Globale Variable auf Modulebene

Wenn die Variable nicht wirklich global sein muss (d. h. bei Änderung modulübergreifend aktualisiert werden muss), ein einfaches Modul -Level-Variable kann ausreichen.

Beispiel:

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>

Test:

$ python b.py
# Output: 1 2

In diesem Beispiel ist die Variable var in a.py sowohl für b.py als auch für b.py zugänglich und c.py. Wenn c.py var ändert, spiegelt sich die Änderung auch in b.py wider und demonstriert dessen modulübergreifendes Verhalten.

Beispiel aus der Praxis:

Django, Ein beliebtes Web-Framework verwendet mit global_settings.py einen ähnlichen Ansatz. Anstelle von Variablen werden Einstellungen als Objekt (django.conf.settings) definiert, das in verschiedene Django-Apps importiert wird.

Das obige ist der detaillierte Inhalt vonWie erreicht man modulübergreifendes Variablenverhalten in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn