580 votes

python: ajoute des valeurs à un ensemble

J'ai un jeu comme ça:

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

Comment puis-je ajouter des valeurs [0,1,2,3,4,5,6,7,8,9,10] dans cet ensemble?

573voto

Alex Martelli Points 330805
 keep.update(yoursequenceofvalues)
 

Par exemple, keep.update(xrange(11)) pour votre exemple spécifique. Ou, si vous devez produire les valeurs dans une boucle pour une autre raison,

 for ...whatever...:
  onemorevalue = ...whatever...
  keep.add(onemorevalue)
 

Mais, bien sûr, le faire en masse avec un seul appel .update est plus rapide et plus pratique, lorsque cela est possible.

153voto

nyuszika7h Points 2430

Vous pouvez également utiliser l'opérateur | pour concaténer deux ensembles:

 >>> my_set = {1}
>>> my_set = my_set | {2}
>>> my_set
{1, 2}
 

Ou un formulaire plus court utilisant |= :

 >>> my_set |= {2}
>>> my_set
{1, 2}
 

Remarque: Dans les versions antérieures à Python 2.7, utilisez set([...]) au lieu de {...} .

47voto

sberry Points 28742

utiliser update comme

keep.update(newvalues)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X