dictoraries key problems

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
Eragpm
User
Beiträge: 14
Registriert: Mittwoch 10. Juni 2020, 23:20

Code: Alles auswählen

self.ways = dict()
        self.ways_keys = self.ways.keys()
        self.board_size = 2
        self.ways[(0, 0)] = Way("+2 Elexier",  # x für + rechts - links y für oben unten
                                list(True for i in range(6)),
                                list(False for i in range(6)))
                                
ich habe einen key aus zwei ints soll die koordinaten wiederspiegeln
jetzt ist mein problem ich kann nicht auf einen einzeln int von den zweien zugreifen, dass brauch ich aber für die Gui
gibt es eine bessere Möglichkeit das zuSpeichern ?
warum kann ich nicht auf die einzelnen KeyWerte zugreifen ?
mit self.ways_keys kann ich die Folge auch aus printen aber nicht zugreifen
Benutzeravatar
__blackjack__
User
Beiträge: 13236
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Eragpm: Das ist halt ein Tupel. Auf die Elemente kann man per Index zugreifen oder mit einer Zuweisung an passende Namen zuweisen.

Warum erstellst Du erst ein leeres Wörterbuch um danach dann ein Schlüssel/Wert-Paar einzufügen, statt gleich ein Wörterbuch mit diesem Paar zu erstellen?

Die beiden Listen mit den Wahrheitswerten liessen sich mit ``*`` erstellen, weil die Wahrheitswerte unveränderbar sind. In diesem Fall sogar Singletons.

`ways_keys` erscheint mir etwas redundant. Man hat ja über `self` auch Zugriff auf `ways`, warum dann noch das Proxy-Objekt für die Schlüssel noch an `self` binden?

Code: Alles auswählen

    def __init__(self):
        self.ways = {(0, 0): Way("+2 Elexier", [True] * 6, [False] * 6)}
        self.board_size = 2
Please call it what it is: copyright infringement, not piracy. Piracy takes place in international waters, and involves one or more of theft, murder, rape and kidnapping. Making an unauthorized copy of a piece of software is not piracy, it is an infringement of a government-granted monopoly.
Antworten