it-swarm.com.de

Wörterbuch nur mit Schlüsseln erstellen?

Ich muss ein Wörterbuch machen, das nur Schlüssel enthält.

Ich kann d.append() nicht verwenden, da es sich nicht um eine Liste handelt, und setdefault, da es zwei Argumente benötigt: einen Schlüssel und einen Wert.

Es sollte wie folgt funktionieren:

d = {}

füge hinzu ein":

d = {"a"}

füge "b" hinzu:

d = {"a", "b")

füge "c" hinzu ...

#Final result is

d = {"a", "b", "c"}

Was ist der Code, den ich brauche, um dieses Ergebnis zu erhalten? Oder ist es eine andere Lösung? Wie zum Beispiel eine Liste zu machen.

l = ["a", "b", "c"] # and transform it into a dictionnary: d = {"a", "b", "c"} ?
5
MartinM

Eine dict mit nur Schlüsseln heißt set .

Beginnen Sie mit einem leeren Satz anstelle eines Wörterbuchs.

d = set()
d.add('a')
d.add('b')
d.add('c')

Sie können ein Set auch über einen {}-Ausdruck erstellen:

d = { 'a', 'b', 'c' }

Oder mit einer Liste:

d = set(['a', 'b', 'c'])
9
khelwood

Das sollte es tun:

l = ["a", "b", "c"]

d = {k:None for k in l}

Wie @Rahul in den Kommentaren sagt, d = {"a", "b", "c"} ist keine gültige Wörterbuchdefinition, da die Werte fehlen. Sie müssen den Schlüsseln Werte zuweisen, damit ein Wörterbuch vorhanden ist. Wenn Ihnen die Werte fehlen, können Sie einfach None zuweisen und später aktualisieren.

1
Ev. Kounis

Sie brauchen eine set kein Wörterbuch,

l = ["a", "b", "c"]
d = set(l)
1
Rahul K P