2010-06-27 25 views

Respuesta

43

Tome un vistazo a this answer:

from numpy import matrix 
from numpy import linalg 
A = matrix([[1,2,3],[11,12,13],[21,22,23]]) # Creates a matrix. 
x = matrix([[1],[2],[3]])     # Creates a matrix (like a column vector). 
y = matrix([[1,2,3]])      # Creates a matrix (like a row vector). 
print A.T         # Transpose of A. 
print A*x         # Matrix multiplication of A and x. 
print A.I         # Inverse of A. 
print linalg.solve(A, x)  # Solve the linear equation system. 
+0

Me alegro de que cite la fuente. No te entusiasma que hayas copiado la respuesta de otra persona y no hayas proporcionado tu propia explicación. Es difícil de creer que esta sea actualmente la respuesta aceptada y la más votada. ¿Quizás podrías poner un poco de esfuerzo para explicar "tu respuesta"? – jasonleonhard

11

Python no tiene matrices. Se puede utilizar una lista de listas o NumPy

2
((1,2,3,4), 
(5,6,7,8), 
(9,0,1,2)) 

El uso de tuplas en lugar de las listas hace que sea marginalmente más difícil de cambiar la estructura de datos en formas no deseadas.

Si va a hacer un uso extensivo de los mismos, es mejor que ajuste un true number array en una clase, para que pueda definir métodos y propiedades en ellos. (O bien, puede NumPy, SciPy, ... si se va a hacer su procesamiento con esas bibliotecas.)

3

Si no va a utilizar el Biblioteca NumPy, puede usar la lista anidada. Este es el código para implementar la lista anidada dinámica (listas bidimensionales).

Deje r es el número de filas

let r=3 

m=[] 
for i in range(r): 
    m.append([int(x) for x in raw_input().split()]) 

cualquier momento se puede añadir una fila usando

m.append([int(x) for x in raw_input().split()]) 

arriba, tiene que introducir la matriz de modo de fila. Para insertar una columna:

for i in m: 
    i.append(x) # x is the value to be added in column 

Para imprimir la matriz:

print m  # all in single row 

for i in m: 
    print i # each row in a different line 
Cuestiones relacionadas