2009-12-27 2 views

Répondre

7

Python est typé dynamiquement. Vous n'avez pas besoin (et en fait IMPOSSIBLE) créer une liste qui ne contient qu'un seul type:

arr = list() 
arr = [] 

Si vous avez besoin pour ne contenir qu'un seul type vous devrez créer votre propre liste -alike, réimplémenter les méthodes de la liste et __setitem__() vous-même.

+1

mais vous pouvez créer des tableaux d'entiers seulement, double, etc. types en python – catchmeifyoutry

+2

Je ne pense pas que l'OP se soucie de la différence entre les tableaux et les listes. –

+1

La déclaration que vous ne pouvez pas est fausse, cependant. – bayer

5

Vous ne pouvez créer des tableaux que d'un seul type à l'aide du package array, mais il n'est pas conçu pour stocker des classes définies par l'utilisateur.

La façon python serait de créer simplement une liste d'objets:

a = [myCls() for _ in xrange(10)] 

Vous pouvez jeter un oeil à this stackoverflow question.

REMARQUE:

Soyez prudent avec cette notation, il ne PROBABLEMENT PAS ce que vous prétendez:

a = [myCls()] * 10 

Cela permettra également de créer une liste avec dix fois par objet myCls, mais il est dix fois LE MÊME OBJET, pas dix objets créés indépendamment.

Questions connexes