Python exec eingebaute Anweisung
Beschreibung
exec führt in einer Zeichenfolge oder Datei gespeicherte Python-Anweisungen aus. Im Vergleich zu eval kann exec komplexeren Python-Code ausführen.
Es ist zu beachten, dass exec in Python 2 keine Funktion, sondern eine eingebaute Anweisung ist. Python 2 verfügt jedoch über eine Funktion execfile(). Man kann es so verstehen, dass Python 3 die Funktionalität der exec-Anweisung und der Funktion execfile() in einer neuen Funktion exec() zusammengeführt hat.
Syntax
Die Syntax von exec lautet:
exec obj
Parameters
- obj -- Der auszuführende Ausdruck.
Rückgabewert
Der Rückgabewert von exec ist immer None.
Beispiele
Das Folgende zeigt Beispiele mit exec:
Beispiel 1
>>>exec 'print "Hello World"'
Hello World
# Zeichenfolge mit einzeiliger Anweisung
>>> exec "print 'example.com'"
example.com
# Multi-line statement string
>>> exec """for i in range(5):
... print "iter time: %d" % i
... """
iter time: 0
iter time: 1
iter time: 2
iter time: 3
iter time: 4
Beispiel 2
x = 10
expr = """
z = 30
sum = x + y + z
print(sum)
"""
def func():
y = 20
exec(expr)
exec(expr, {'x': 1, 'y': 2})
exec(expr, {'x': 1, 'y': 2}, {'y': 3, 'z': 4})
func()
Ausgabeergebnis:
60 33 34Andere Erweiterungen
Python Built-in-Funktionen