Bir Matrisi Değiştirmek için Python Programı

Bu örnekte, (iç içe geçmiş bir liste kullanılarak oluşturulan) bir matrisin sırasını değiştirmeyi öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki Python programlama konuları hakkında bilgi sahibi olmalısınız:

  • Döngü için Python
  • Python Listesi

Python'da, bir matrisi iç içe bir liste olarak uygulayabiliriz (bir liste içinde liste). Her bir öğeyi matrisin bir satırı olarak ele alabiliriz.

Örneğin X = ((1, 2), (4, 5), (3, 6)), 3x2 matrisi temsil eder. İlk sıra olarak seçilebilir X(0). Ve ilk satırın ilk sütunundaki eleman olarak seçilebilir X(0)(0).

Bir matrisin transpoze edilmesi, satırların ve sütunların değişmesidir. X 'olarak belirtilir. X'te i'inci satır ve j'inci sütundaki eleman X'de j'inci satıra ve i'inci sütuna yerleştirilecektir. Yani X 3x2 bir matris ise, X '2x3 bir matris olacaktır.

İşte bunu Python'da gerçekleştirmenin birkaç yolu.

İç İçe Döngü kullanarak Matris Transpoze Etme

 # 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) 

Çıktı

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

Bu programda, forher satır ve her sütunda yineleme yapmak için iç içe döngüler kullandık . Her noktada X (i) (j) elemanını (j) (i) sonucuna yerleştiriyoruz.

Yuvalanmış Liste Anlamayı Kullanarak Matris Transpoze Etme

 ''' 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)

Bu programın çıktısı yukarıdaki ile aynıdır. Matristeki her bir öğeyi yinelemek için iç içe geçmiş liste anlama özelliğini kullandık.

Ilginç makaleler...