Python 118 - NumPy 3
Merhabalar,
Bugün NumPy dizilerine atadığımız verilere ulaşma konusunu ele alıyoruz ve önce klasik for döngüsüyle bunun nasıl yapıldığını, ardından nd iter ve nd enumerate yardımcı fonksiyonlarını tanıyacağız (nd yi numpy data olarak düşünün ve aradaki boşlukları görmeyin).
İlk örneğimiz 3 elemanlı, 1 boyutlu bir dizinin elemanlarını yazdırmak olsun:
import numpy as np
arr = np.array( ["elma","armut"] ) # 1-D dizimiz hazır
for x in arr:
print(x)
2-D bir diziyi iç içe 2 for ile yazdırabiliriz:
import numpy as np
arr = np.array( [[1, 2, 3], [4, 5, 6]] ) # 2-D dizimiz hazır
for satır in arr:
for x in satır:
print(x)
Benzer şekilde 3-D bir dizinin tüm elemanlarını iç içe 3 tane for döngüsüyle tarayabiliriz:
import numpy as np
arr = np.array( [[[1, 2, 3], [4, 5, 6], [7, 8, 9]]] ) # 2-D dizimiz hazır
for x in arr:
for y in x:
for z in y:
print(z)
nditer
Gördüğünüz gibi boyut sayısı arttıkça iç içe kurmamız gereken döngü sayısı da artıyor. İşte tam bu noktada nditer() yardımcı fonksiyonu pratik bir çözüm sunuyor. Yukarıdaki son örneği nditer() ile basitçe şöyle yazıyoruz ve fazladan for satırlarını kaldırmış oluyoruz:
import numpy as np
arr = np.array( [[[1, 2, 3], [4, 5, 6], [7, 8, 9]]] ) # 2-D dizimiz hazır
for x in np.nditer(arr)
print(x)
Fonksiyon NumPy kütüphanesine ait olduğundan başında np. noktalı referansını kullanmak gerektiğini unutmayalım.
ndenumerate
Kod dünyasında enumerate ifadesi sıra numarası vermek anlmına geliyor. Eğer bir NumPy dizisinin elemanıyla birlikte, o elemanın dizideki pozisyonu da gerekiyorsa, yani bulunduğu boyuttaki sıra numarası da lazımsa ndenumerate yardımcı fonksiyonunu kullanabiliriz:
import numpy as np
arr = np.array( [ ["elma", "armut"], ["kiraz","erik"] ] )
for i, x in np.ndenumerate(arr):
print(i, x)
Bu haftalık bu kadar, tekrar görüşmek dileklerimle hoşça kalın.
- Python 117 - Numpy 2 / 11.07.2021
- Python 116 - Pythonu online ve kütüphaneleriyle birlikte kullanmak / 04.07.2021
- Python 115 - Pythonda Kütüphaneler ve NumPy / 27.06.2021
- Python 114 - Alıştırmalar / 20.06.2021
- Python 113 - String İşlemleri / 13.06.2021
- Python 112 - For ve While döngüleri / 30.05.2021
- Python 111 - Özet / 23.05.2021
- Python 110 - Fonksiyonlar / 29.03.2021
- Python 109 - Slicing / 28.02.2021
















































































