582 Stimmen

Anhängen von Werten an eine Menge in Python

Ich habe einen Satz wie diesen:

keep = set(generic_drugs_mapping[drug] for drug in drug_input)

Wie kann ich Werte hinzufügen? [0,1,2,3,4,5,6,7,8,9,10] in dieses Set?

1voto

Kira Resari Punkte 1206

Dazu konvertiere ich sowohl die ursprüngliche Menge als auch die Werte, die ich hinzufügen möchte, in Listen, füge sie hinzu und konvertiere sie dann wieder in eine Menge, etwa so:

setMenu = {"Eggs", "Bacon"}
print(setMenu)
> {'Bacon', 'Eggs'}
setMenu = set(list(setMenu) + list({"Spam"}))
print(setMenu)
> {'Bacon', 'Spam', 'Eggs'}
setAdditions = {"Lobster", "Sausage"}
setMenu = set(list(setMenu) + list(setAdditions))
print(setMenu)
> {'Lobster', 'Spam', 'Eggs', 'Sausage', 'Bacon'}

Auf diese Weise kann ich auch leicht mehrere Sätze mit der gleichen Logik hinzufügen, was mir eine TypeError: unhashable type: 'set' wenn ich versuche, es mit dem .update() Methode.

-1voto

decadenza Punkte 1929

Bei mir funktioniert das in Python 3 ganz einfach auf diese Weise:

keep = keep.union((0,1,2,3,4,5,6,7,8,9,10))

Ich weiß nicht, ob das richtig ist...

-1voto

rishi jain Punkte 1258
keep.update((0,1,2,3,4,5,6,7,8,9,10))

O

keep.update(np.arange(11))

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X