s = set('ABC')
s.add('z')
s.update('BCD')
s.remove('DEF') # error here
s -= set('DEFG')
Répondre
Comme d'autres l'ont souligné, 'DEF'
, membre de l'ensemble que vous essayez de supprimer, est pas membre l'ensemble, et remove
, par the docs, est spécifié comme « Soulève KeyError si élém ne figure pas dans l'ensemble. ».
Si vous voulez « manque élément » pour signifier non = op silencieuse à la place, il suffit d'utiliser discard au lieu de remove
: c'est la différence cruciale entre les méthodes de discard
et remove
ensembles, et la raison même, ils doivent tous deux exister!
L'argument de set.remove()
doit être membre de jeu.
'DEF'
n'est pas un membre de votre ensemble. 'D'
est.
De http://docs.python.org/library/stdtypes.html:
remove(elem)
Remove element elem from the set. Raises KeyError if elem is not contained in the set.
'DEF' est pas dans le jeu
vous attendez-vous 'DEF'
à traiter comme un élément ou un mis?
Dans ce dernier cas, utilisez s.difference_update('DEF')
.
Peu importe la façon dont il les veut à traiter, le problème est que « EF » n'existent pas dans le jeu, d'où le message d'erreur. –
Désaccordé. "Vous appelez la mauvaise méthode pour cet argument" est également une réponse valable à la question. Étant donné que l'auteur utilise des chaînes comme ensembles, il est valide de supposer qu'il a besoin de 'difference_update()' ici. –
- 1. set() runtime en python
- 2. méthodes set prépondérants en Python
- 3. Erreur de rétrolien python - en utilisant pymssql
- 4. Attribut erreur en Python
- 5. Erreur dans la programmation gui en python en utilisant tkinter
- 6. Tri std :: list en utilisant std :: set
- 7. en utilisant SET type de données dans une base MySQL
- 8. erreur d'importation en python
- 9. tests erreur d'assertion en python
- 10. En utilisant SQLite3 en Python
- 11. python: en utilisant numpy.histogram
- 12. en utilisant un deux-points dans une chaîne en python
- 13. timer Web en utilisant Python
- 14. erreur en utilisant ASMifierClassVisitor
- 15. Python: Open() en utilisant une variable
- 16. erreur Python en utilisant mysqldb - module jeux est dépréciée
- 17. En Python, urllib2 donnant erreur
- 18. erreur de syntaxe en python:
- 19. Pourquoi j'obtiens cette erreur en utilisant {1..9} dans zsh?
- 20. Set vim colorscheme en modeline
- 21. Python: Obtenir des objets en profondeur? (? Bibliothèque set)
- 22. erreur en utilisant C# mail.dll
- 23. Accéder à un attribut en utilisant une variable en Python
- 24. Comment charger une DLL en utilisant ctypes en Python?
- 25. set timeout to http réponse méthode de lecture en python
- 26. Pourquoi ai-je une erreur TypeError en boucle?
- 27. Chargement d'une image en Python (Erreur) part_2
- 28. en utilisant le format 'variable.xyz' en Python
- 29. Thread simple en Python 2.6 utilisant thread.start_new_thread()
- 30. Comment réparer une erreur "ImportError: No module named ..." en Python?
@ zjm1126: s'il vous plaît inclure retraçage prochaine fois. – bernie
je suis désolé, quelle est la 'traceback' ??? – zjm1126
>>> s.remove ('DEF') 'retraçage (appel le plus récent en dernier): Fichier "", ligne 1, dans KeyError: « DEF'' –
bernie