In diesem Artikel werden hauptsächlich die Details zum Testen des __ name__-Werts in Python vorgestellt
Der im Test verwendete Code lautet wie folgt:
#test_name0.py def test(): return name print name print test() import test_name1 test_name1.test()
#test_name1.py def test(): print name print name
in Das Ausführungsbefehl und Ergebnis im Python Top-Level-Interpreter lauten wie folgt:
In [1]: type(name) Out[1]: str In [2]: print name Out[2]: main In [3]: import test_name0 test_name0 test_name0 test_name1 test_name1
Führen Sie python test_name0.py
in cmd aus, das Ergebnis ist wie folgt:
main main test_name1 test_name1
Es ist daraus ersichtlich:
(1) Im Python-Top-Level-Interpreter oder einem direkt ausgeführten Skript name=='main'
(2) Im aufrufenden Modul name==module<code>name==<a href="//m.sbmmt.com/code/8212.html" target="_blank">module</a> name
name
(3) Wenn eine unerwartete Situation gefunden wird , es läufttest_name0.py
Skript und dann import test_name0
, oder import test_name0
und führt dann das Skript von test_name0.py
aus, das Ergebnis ist
test_name0 test_name0 test_name1
oder
main main test_name1
statt
test_name0 test_name0 test_name1 test_name1
oder
main main test_name1 test_name1
organisierte die Kernpunkte des Problems und stellte die Frage zu Segmentfehlern, um den Grund für dieses Problem zu verstehen.
Das heißt: Das Python-Modul verfügt über einen Cache. Wenn Sie es einmal importieren und dann erneut importieren, wird der Code im oberen Bereich des Moduls nicht erneut ausgeführt.
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in das Testen des __name__-Werts in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!