Python 'set' objet ne prend pas en charge l'indexation
Je suis en train de travailler sur un système d'exploitation Windows 7 dans un Python (3.2.2) shell. Essayer d'apprendre la langue, je suis entré et avait retourné le suivant:
>>> cast = {
'cleese',
'Palin',
'Jones',
'Idle'
}
>>> print (cast[1])
Traceback (most recent call last):
File "<pyshell#12>", line 1, in <module>
print (cast[1])
TypeError: 'set' object does not support indexing
>>> cast.append('Gilliam')
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
cast.append('Gilliam')
AttributeError: 'set' object has no attribute 'append'
==========================
Il me semble que si le problème n'est pas dans le codage, mais avec la façon dont le programme a été installé.
Je l'ai installé, désinstallé et réinstallé, mais le resutl est le même. J'ai il y a quelque chose que je dois faire avant de Python shell est prêt à être utilisé?
hans
Est-ce que vous avez posté ici le code complet? On dirait que vous êtes la définition d'un dictionnaire et d'essayer d'y accéder en utilisant la liste de notation. Vous devriez voir une erreur de syntaxe ici. Essayez cast = ["cleese","Palin","Durand","Inactif"]. Notez que le '[' au lieu de '{'
OriginalL'auteur user1157504 | 2012-01-19
Vous devez vous connecter pour publier un commentaire.
Python semble bien fonctionner. Le point est que
set
ne prend pas en charge l'indexation, ou l'ajout d'. Essayez d'utiliser une liste à la place ([]
au lieu de{}
). En lieu et place de la précédente,set
aadd
, mais l'indexation est.Et Python a aide utile,
imprime beaucoup d'infos sur
set
s.OriginalL'auteur Daniel Fischer
Il semble que vous essayez de définir une liste. Cependant, vous avez utilisé des accolades {} au lieu de crochets []. L'interprète considérée comme un dictionnaire plutôt qu'une liste, afin d'indexation et append() ne fonctionne pas ici.
cast
comme un jeu, pas un dictionnaire. Il n'y a pas de paires clé/valeur pour former un dict.OriginalL'auteur Yang Meng
Juste de mentionner ici,
set's'
ne prennent pas en charge l'indexation, comme ils le sont en fonction de hachage, il est très similaire àdictionaries
qui ne prennent pas en charge l'indexation. Vous ne pouvez accéder à undict
parkey
.Si vous avez besoin d'indexation, vous pouvez convertir vos définie comme suit:
OriginalL'auteur user1767754