2010-06-27 13 views

Odpowiedz

43

Spójrz na 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

Cieszę się, że cytowane źródła. Nie podekscytowany, skopiowałeś odpowiedź od kogoś innego i nie dostarczyłeś własnego wyjaśnienia. Trudno uwierzyć, że jest to obecnie akceptowana odpowiedź i najwyższa liczba głosów. Być może mógłbyś trochę wysiłku wyjaśnić "swoją odpowiedź"? – jasonleonhard

11

Python nie ma macierzy. Można skorzystać z listy lub list NumPy

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

Korzystanie krotki zamiast list sprawia, że ​​nieznacznie trudniejsze do zmiany struktury danych w niechcianych sposobów.

Jeśli zamierzasz je szeroko wykorzystywać, najlepiej zawijaj w klasie klasę true number array, aby można było na niej zdefiniować metody i właściwości. (Lub, można NumPy, scipy ... jeśli masz zamiar zrobić swój przetwarzanie tych bibliotek.)

3

Jeśli nie zamierzasz używać Biblioteka NumPy, możesz użyć zagnieżdżonej listy. Jest to kod służący do implementacji dynamicznej listy zagnieżdżonej (listy dwuwymiarowe).

Niech r jest liczba wierszy

let r=3 

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

każdej chwili można dołączyć wiersza przy użyciu

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

Above, trzeba wprowadzić macierz wiersz mądry. Aby wstawić kolumnę:

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

do wydrukowania macierzy:

print m  # all in single row 

for i in m: 
    print i # each row in a different line 
Powiązane problemy