Anwendungsbeispiele zur if-Anweisung in Python (Anwendungsbeispiele zur if-Anweisung in Python), Spiel, Seite 724527
https://www.purl.org/stefan_ram/pub/anwendungsbeispiele_if_anweisung_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Anwendungsbeispiele zur if-Anweisung in Python 

Die if-Anweisung in Modulen

In Skripten kann die if-Anweisung verwendet werden, um die Ausführung bestimmter Anweisungen zu verhindern, falls das Skript als Modul importiert wird.

Wenn ein Skript direkt ausgeführt wird, hat der Name »__name__« den Wert »__main__«.

main.py
print( __name__ )
Protokoll
__main__

Wenn ein Skript hingegen als Modul verwendet wird, hat der Name »__name__« den Namen des Moduls als Wert. Dies gilt sowohl bei einer mit »import« beginnender Verwendung als auch bei einer mit »from« beginnnenden Verwendung.

example.py
print( __name__ )
main.py
import example
Protokoll
example

Wir können nun erkennen, ob ein Skript direkt ausgeführt oder als Modul importiert wird.

Hier ein Beispiel mit direkter Ausführung:

main.py

if __name__ == '__main__':
print( 'Ich werde direkt ausgefuehrt.' )

if __name__ != '__main__':
print( 'Ich werde als Modul importiert.' )

Protokoll
Ich werde direkt ausgefuehrt.

Hier ein Beispiel mit einer Verwendung mit »import«:

example.py

if __name__ == '__main__':
print( 'Ich werde direkt ausgefuehrt.' )

if __name__ != '__main__':
print( 'Ich werde als Modul importiert.' )

main.py
import example
Protokoll
Ich werde als Modul importiert.

Diese Technik wird in Skripten oft verwendet, um Anweisungen auszublenden, die nur ausgeführt werden sollen, falls das Skript direkt gestartet wird, aber nicht, wenn es als Modul importiert wird.

main.py

def zweifach( x ):
"""Ergibt das Doppelte.
>>> zweifach( 4 )
8"""
return 3 * x

if __name__ == '__main__':
from doctest import testmod
testmod()

Hier ein Beispiel mit direkter Ausführung:

Protokoll
**********************************************************************
File "main.py", line 3, in __main__.zweifach
Failed example:
zweifach( 4 )
Expected:
8
Got:
12
**********************************************************************
1 items had failures:
1 of 1 in __main__.zweifach
***Test Failed*** 1 failures.
example.py

def zweifach( x ):
"""Ergibt das Doppelte.
>>> zweifach( 4 )
8"""
return 3 * x

if __name__ == '__main__':
from doctest import testmod
testmod()

Hier ein Beispiel mit einer Verwendung mit »from«:

main.py

from example import zweifach

print( zweifach( 3 ))

Protokoll
9

 

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram724527 stefan_ram:724527 Anwendungsbeispiele zur if-Anweisung in Python Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd724527, slrprddef724527, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/anwendungsbeispiele_if_anweisung_python