salut
j’ai essayé de créer un matrice, sous python, avec le code suivant :
j’avais comme objectif de créer un fonction de produit matriciel. A mon grande surprise, la fonction ne marche pas. Après une heure je découvre la chose suivante :
[code]>>> a=[[0]*5]*3
a[0][0]=1
a
[[1, 0, 0, 0, 0], [1, 0, 0, 0, 0], [1, 0, 0, 0, 0]]a=[[0]*5]*3
a
[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]a[0][0]=1
a
[[1, 0, 0, 0, 0], [1, 0, 0, 0, 0], [1, 0, 0, 0, 0]]
[/code]
le même objet, qui représente une ligne de la matrice, a été utilisé pour représenter les autres lignes.
conclusion : malgré la syntaxe très simple de python, il faut toujours rester prudent !
maintenant je ne comprends pas pour quoi ça ne donne pas
[[1, 1, 1, 1, 1], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1]]
il devait utiliser le même [0] dans les lignes quand j’ai fait [0]*5
que pensez-vous ?