Frage von mAin0x, 17

Was bedeutet in Python ** und was nützt es?

Expertenantwort
von TeeTier, Community-Experte für programmieren, 15

Wie in der anderen Antwort bereits geschrieben, handelt es sich dabei auch um den Potenzier-Operator.

Es gibt aber noch eine weitere Bedeutung, und zwar ist das auch die festlegung des Dictionaries für Keyword-Argumente in Funktionsdefinitionen:

def foo(*args, **kwargs):
print(args, kwargs)

foo(1, 2, 3, a=4, b=5, c=6)

Das liefert eine ähnliche Ausgabe wie das hier:

(1, 2, 3) {'a': 4, 'c': 6, 'b': 5}

So etwas wird oft bei der Metaprogrammierung, oder beim Duck-Typing verwendet. :)

Kommentar von TeeTier ,

PS: Um die anderen Fragen in deinem Kommentar aus der anderen Antwort zu beantworten ...

// ist eine Ganzzahl-Division ohne Rest:

10 / 3 # 3.333333335
10 // 3 # 3

Und %% ist die Escape-Sequenz, mit der man bei der String-Formatierung ein einziges (!) Prozentzeichen darstellt:

print('%s: %d%%' % ('Alkohol', 5))
# Alkohol: 5%

Alles klar? :)

Kommentar von frontflop ,

Super erklärt! Vote for beste Antwort !

Antwort
von frontflop, 17

Hoch, also 2^2 oder so. Das sind also Potenzen. z.B 2hoch3 = 8

Kommentar von mAin0x ,

Ok und // oder %%

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten