153 votes

Comment obtenir un tableau vide de n'importe quelle taille en python?

Je veux essentiellement un équivalent python de ceci en C:

 int a[x];

mais en python je déclare un tableau comme :

 a = []

et le problème est que je veux attribuer des emplacements aléatoires avec des valeurs telles que :

 a[4] = 1

mais je ne peux pas le faire avec python, car le tableau est vide.

299voto

Sven Marnach Points 133943

Si par "tableau", vous entendez en fait une liste Python, vous pouvez utiliser

 a = [0] * 10

ou alors

 a = [None] * 10

28voto

dappawit Points 3782

Vous ne pouvez pas faire exactement ce que vous voulez en Python (si je vous ai bien lu). Vous devez mettre des valeurs pour chaque élément de la liste (ou comme vous l'appelez, tableau).

Mais, essayez ceci :

 a = [0 for x in range(N)]  # N = size of list you want
a[i] = 5  # as long as i < N, you're okay

Pour les listes d'autres types, utilisez autre chose que 0. None est souvent aussi un bon choix.

22voto

DanielTheRocketMan Points 2886

Vous pouvez utiliser numpy :

 import numpy as np

Exemple de tableau vide :

 np.empty([2, 2])
array([[ -9.74499359e+001,   6.69583040e-309],
       [  2.13182611e-314,   3.06959433e-309]])  

7voto

Pythoni Points 274

vous pouvez également étendre cela avec la méthode d'extension de liste.

 a= []
a.extend([None]*10)
a.extend([None]*20)

5voto

Lyle Points 107

Déclarez simplement la liste et ajoutez chaque élément. Par exemple :

 a = []
a.append('first item')
a.append('second item')

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