logo
19 KASIM 2025


Python 118 - NumPy 3

18.07.2021 00:00:00

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.

Yorumlar
Yorum bulunmuyor.
Yorumlarınızı paylaşın

--
 
Nahit Taşpınar / diğer yazıları
"Abraham Anlaşması'nın bir parçası olmak istiyoruz"
Selman'dan Trump'ı memnun eden açıklama
ABD, Suud'a F-35 de satıyor
Trump'tan Veliaht Selman'a en yüksek protokol
Erdoğan hayat pahalılığı hakkında konuştu
'Hayat pahalılığını mutlaka çözeceğiz'
Türkiye'yi sarsan olayda sıcak gelişme
"Yine aynı şekilde ilaçladım çıktım"
Bahçeli'nin ifade ettiği 'İmralı'ya ziyaret' Bakan Tunç'a soruldu
"Bu yöndeki takdir yetkisi komisyona aittir"
Bankalar, reel sektörü kıskaca aldı
Merkez Bankası faizi düşürüyor ancak bankalar hiç de oralı olmuyor!
İşte dikkat edilecek noktalar!
Sokak lezzetleri canınızdan etmesin!
ABD ile baş etmeleri mümkün mü?
Venezuela 'en kötü senaryoya' hazırlık yapıyor
"Kimse gitmezse üç arkadaşımı alır ben İmralı'ya giderim"
Bahçeli'den İmralı konusunda kararlı duruş!
Bir dolandırıcılık haberi daha: 21 gözaltı
Kamu zararı 100 milyar TL
'Eski Türkiye' böyle değildi
Kasım ayının ilk haftasında toplam 1 ton 65 kilogram esrar yakalandı
Ne yolsuzluk bitiyor ne dolandırıcılık ne de kara para...
IQ Money'e operasyon: 26 kişi gözaltına alındı
Maduro'dan, Trump ile diyalog açıklaması
"Yüz yüze hiçbir sorun olmadan diyalog kurulacak"
BMGK'den, ABD'nin Gazze tasarısına onay
Rusya ve Çin'den çekimser oy
Bakan Yerlikaya, komisyonda soruları yanıtladı
"Suça sürüklenen çocuklarla ilgili cezaları gözden geçirmemizin zamanı geldi"
"Abraham Anlaşması'nın bir parçası olmak istiyoruz"
Selman'dan Trump'ı memnun eden açıklama
ABD, Suud'a F-35 de satıyor
Trump'tan Veliaht Selman'a en yüksek protokol
Erdoğan hayat pahalılığı hakkında konuştu
'Hayat pahalılığını mutlaka çözeceğiz'
Türkiye'yi sarsan olayda sıcak gelişme
"Yine aynı şekilde ilaçladım çıktım"
Bahçeli'nin ifade ettiği 'İmralı'ya ziyaret' Bakan Tunç'a soruldu
"Bu yöndeki takdir yetkisi komisyona aittir"
Bankalar, reel sektörü kıskaca aldı
Merkez Bankası faizi düşürüyor ancak bankalar hiç de oralı olmuyor!
İşte dikkat edilecek noktalar!
Sokak lezzetleri canınızdan etmesin!
ABD ile baş etmeleri mümkün mü?
Venezuela 'en kötü senaryoya' hazırlık yapıyor
"Kimse gitmezse üç arkadaşımı alır ben İmralı'ya giderim"
Bahçeli'den İmralı konusunda kararlı duruş!
Bir dolandırıcılık haberi daha: 21 gözaltı
Kamu zararı 100 milyar TL
'Eski Türkiye' böyle değildi
Kasım ayının ilk haftasında toplam 1 ton 65 kilogram esrar yakalandı
Ne yolsuzluk bitiyor ne dolandırıcılık ne de kara para...
IQ Money'e operasyon: 26 kişi gözaltına alındı
Maduro'dan, Trump ile diyalog açıklaması
"Yüz yüze hiçbir sorun olmadan diyalog kurulacak"
BMGK'den, ABD'nin Gazze tasarısına onay
Rusya ve Çin'den çekimser oy
Bakan Yerlikaya, komisyonda soruları yanıtladı
"Suça sürüklenen çocuklarla ilgili cezaları gözden geçirmemizin zamanı geldi"
logo

Beşyol Mah. 502. Sok. No: 6/1
Küçükçekmece / İstanbul

Telefon: (212) 624 09 99
E-posta: internet@yenimesaj.com.tr gundogdu@yenimesaj.com.tr


WhatsApp iletişim: (542) 289 52 85


Tüm hakları Yeni Mesaj adına saklıdır: ©1996-2025

Yazılı izin alınmaksızın site içeriğinin fiziki veya elektronik ortamda kopyalanması, çoğaltılması, dağıtılması veya yeniden yayınlanması aksi belirtilmediği sürece yasal yükümlülük altına sokabilir. Daha fazla bilgi almak için telefon veya eposta ile irtibata geçilebilir. Yeni Mesaj Gazetesi'nde yer alan köşe yazıları sebebi ile ortaya çıkabilecek herhangi bir hukuksal, ekonomik, etik sorumluluk ilgili köşe yazarına ait olup Yeni Mesaj Gazetesi herhangi bir yükümlülük kabul etmez. Sözleşmesiz yazar, muhabir ve temsilcilere telif ödemesi yapılmaz.