Python-Schlüsselwörter und -Identifikatoren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

del ist ein Schlüsselwort. Kannst du darum nicht in Ausdrücken an Stelle eines Identifiers (wie zb formalen Parametern benutzen. Genauso wenig wie class, def, if, etc pp. Da ist nichts besonderes dran.

Für Wörterbücher ist die Lösung trivial:

{ “del”: 1}[“del”]

geht problemlos (Achtung, Anführungszeichen sind ggf falsch wegen Telefon tipperei)
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Da du `del` und `abs` erwähnt hast: `del` ist ein Schlüsselwort und `abs` ist eine Funktion.
Benutzeravatar
kbr
User
Beiträge: 1501
Registriert: Mittwoch 15. Oktober 2008, 09:27

Eine Übersicht der Schlüsselwörter von Python findest Du hier: https://docs.python.org/3/reference/lex ... l#keywords.
Die keywords der Sprache entsprechen nicht den keys von Dictionaries und können auch nicht als Labels verwendet werden.
Benutzeravatar
__blackjack__
User
Beiträge: 13939
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@granda22: Selbst wenn man ``del`` in einem (Lambda-)Ausdruck verwenden könnte, ist das keine Funktion und das als Funktionsaufruf mit zwei Argumenten zu schreiben wäre falsch. Das ist nicht ``del(obj, key_or_index)`` sondern ``del obj[key_or_index]``.
“Java is a DSL to transform big Xml documents into long exception stack traces.”
— Scott Bellware
Antworten