Pythoni programm maatriksi üleviimiseks

Selles näites õpid maatriksit (mis luuakse pesastatud loendi abil) üle võtma.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Pythoni programmeerimise teemadest:

  • Python for Loop
  • Pythoni loend

Pythonis saame maatriksi rakendada pesastatud loendina (loend loendi sees). Iga elementi võime käsitleda maatriksi reana.

Näiteks X = ((1, 2), (4, 5), (3, 6))tähistab 3x2 maatriksit. Esimese rea saab valida järgmiselt X(0). Esimese rea esimese veeru elemendi saab valida järgmiselt X(0)(0).

Maatriksi ülekandmine on ridade ja veergude vahetamine. Seda tähistatakse kui X '. X-i i-nda rea ​​ja neljanda veeru element paigutatakse X-i j-sse ja i-sse veergu. Nii et kui X on 3x2 maatriks, on X 'maatriks 2x3.

Siin on paar võimalust Pythonis selle saavutamiseks.

Matrix Transpose, kasutades pesastatud silmus

 # Program to transpose a matrix using a nested loop X = ((12,7), (4 ,5), (3 ,8)) result = ((0,0,0), (0,0,0)) # iterate through rows for i in range(len(X)): # iterate through columns for j in range(len(X(0))): result(j)(i) = X(i)(j) for r in result: print(r) 

Väljund

 (12, 4, 3) (7, 5, 8) 

Selles programmis oleme foriga rea ​​ja iga veeru kordamiseks kasutanud pesastatud silmuseid. Igas punktis asetame elemendi X (i) (j) tulemuseks (j) (i).

Maatriksi ülekandmine pesastatud loendi mõistmise abil

 ''' Program to transpose a matrix using list comprehension''' X = ((12,7), (4 ,5), (3 ,8)) result = ((X(j)(i) for j in range(len(X))) for i in range(len(X(0)))) for r in result: print(r)

Selle programmi väljund on sama, mis ülal. Maatriksi iga elemendi kordamiseks oleme kasutanud pesastatud loendi mõistmist.

Huvitavad Artiklid...