Bindestrich in einer Variable

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
Kirikkayis
User
Beiträge: 85
Registriert: Freitag 18. Januar 2019, 08:02

Hey,

ich habe eine Funktion definiert die wie folgt aussieht:

Code: Alles auswählen

def getValueName(self):
	valueName = {
	
	}
	if self.data ist not None:
	          valueName.update(data = self.data)
	if self.backgroundcolor ist not None:
	          valueName.update(backgroundcolor = self.backgroundcolor)
Mein Problem ist nun das in valueName "backgroundcolor" geupdated wird.
Ich brauche es jedoch als "background-color", wenn ich in "valueName.update(background-color = self.backgroundcolor) schreibe gibt es eine Fehlermeldung.
Wie kann ich eine Variable mit einem Bindestrich definieren?
Sirius3
User
Beiträge: 18270
Registriert: Sonntag 21. Oktober 2012, 17:20

Bitte immer den wirklichen Code posten, und nicht etwas, was Du so ungefähr benutzt. Das macht die Fehlersuche sonst manchmal ziemlich mühselig. Eingerückt wird immer mit 4 Leerzeichen pro Ebene, nicht Tabs.

Man lernt doch nie aus. Wieder eine Variante, wie man Wörterbücher nicht füllen sollte. Wenn einzelne Schlüssel gesetzt werden sollen, benutzt man den Indexzugriff.
Methoden schreibt man wie Variablennamen nach Konvention klein_mit_unterstrich.
Wenn eine Methode `get_value_name` heißt, würde ich erwarten, einen Wertenamen zu bekommen und kein Wörterbuch mit data und background. Wo ist der Name?

Ach ja, zum Fehler, wenn Du Schlüssel von Wörterbücher so setzen würdest, wie es vorgesehen ist, hättest Du das Problem nicht.
Kirikkayis
User
Beiträge: 85
Registriert: Freitag 18. Januar 2019, 08:02

"Ach ja, zum Fehler, wenn Du Schlüssel von Wörterbücher so setzen würdest, wie es vorgesehen ist, hättest Du das Problem nicht."
Davon werde ich leider nicht schlauer.
Wenn ich "Schlüssel von Wörterbücher so setzen würdest, wie es vorgesehen ist, hättest Du das Problem nicht." wüsste wie, würde ich hier sicherlich nicht fragen, glaub mir.
Sorry.
Benutzeravatar
sparrow
User
Beiträge: 4538
Registriert: Freitag 17. April 2009, 10:28

Die Verwendung von dict\s sind absolute Python Grundlagen. Hier der entsprechende Auszug aus dem offiziellen Tutorial.

Was meinst du denn, was diese Zeile tut?:

Code: Alles auswählen

valueName.update(data = self.data)
Und wie unterscheidet sie sich von:

Code: Alles auswählen

valueName.update(self.data)
Antworten