logo
21 KASIM 2025


Python 107 - Liste oluşturma yöntemleri (1)

16.02.2021 00:00:00

Merhabalar,

Son yazımızda birden fazla veriyi list dediğimiz yapıda tutmayı gördük. Listeye eleman ekleme, silme, güncelleme, toplu işlem yapma vs. komutlarını inceledik. Elimizde liste olarak virgülle ayrılmış sayılar vardı. list() fonksiyonu kullanarak pratik listeler de oluşturmak mümkün.

  print(list("armut"))

ifadesi armut taki tüm harfleri peşpeşe bir liste halinde verir: ["a", "r", "m", "u", "t"].

Pythonda sıralı sayıları otomatik olarak üreten range() fonksiyonunu kulanarak da liste oluşturabiliriz:

  print(list(range(4)))
  print(list(range(5,10)))
  print(list(range(5,30,5)))
  • İlk satırda range() fonksiyonuna sadece 1 değer verilmiş, sıfırdan o değere kadar sayıları verir: [0, 1, 2, 3]
  • İki değer verdiğimizde başlangıçtan bitiş harice kadar sayılar: [5, 6, 7, 8, 9]
  • Üç değer verdiğimizde ise artış bildirdiğimizi kabul eder: [5, 10, 15, 20, 25]

List Comprehensions

Pythonda şu düzende özel bir ifade yazarak ta hazır bir listeden yeni bir liste türetebiliyoruz: [özet-formül for değişken in hazır-liste]. Köşeli parantez içindeki sıra önemli : özet-formül, for kelimesi, değişken, in kelimesi, hazır-liste. Örnekler :

  bayrak = ["kırmızı", "beyaz"]
  print([ x+" renk" for x in bayrak ])

bayrak hazır listesinin sırayla her elemanının sonuna renk kelimesini yapıştırıyoruz, sonuç: ["kırmızı renk", "beyaz renk"].

  vektör = [-4, -2, 0, 2, 4]
  print([ 2*x for x in vektör ])

vektör hazır listesinin sırayla her elemanının 2 katını alıyoruz, sonuç: [-8, -4, 0, 4, 8]. Özet-formül yerine içinde x değişkeni geçen bir fonksiyon da kullanabiliriz.

Liste filtreleme

Özel ifadenin sonuna if ile bir ek yaptığımızda bazı elemanları atlayabiliyoruz:

vektör = [-4, -2, 0, 2, 4]
print([ 2*x for x in vektör if x>0 ])

vektör hazır listesinin, bu sefer sıfırdan büyük olan her elemanının 2 katını alıyoruz, sonuç: [0, 4, 8].

Buradaki ve kendi tüm Python kodlarınızı aşağıdaki online sitelerde denemeyi unutmayın. Tekrar görüşmek dileklerimle.

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

--
 
Nahit Taşpınar / diğer yazıları
Yolsuzluğunu bugünkü adresi Balıklı Rum Hastanesi
Sahte reçete ile 112 milyon liralık vurgun
Venezuela: ABD, ülkemizi 51. eyalet yapmak istiyor
"Asla başka bir ülkenin eyaleti olmayacağız"
Zelenskiy, ABD'nin hazırladığı planı değerlendirdi
"Ani açıklamalar yapmayacağız"
Vergiye yönelik düzenleme teklifi TBMM'de
"Bu düzenleme kayıt dışılığı getirecek"
Atatürk’ün hazırlattığı hutbeler
Eksik ölçenler, yanlış tartanlar
'ABD Türkiye'ye F-35 vermez'
'ABD yönetiminden teminat aldık'
AKP Öcalan'a gidecek
Oylamada evet oyu verilecek
Katil Netanyahu Suriye'de
Esad sonrası Suriye'den bir görünüm
'Alarm zilleri yüksek sesle çalıyor'
'Şu anda bir felaketi yaşıyoruz'
Nitelikli çoğunluk yerine basit çoğunluk
MHP'den İmralı oylaması açıklaması
10 maddelik öneri
Erhürman, Hristodulidis ile görüştü
Rakip Romanya
Geçersek Slovakya - Kosova galibiyle oynayacağız
Başsavcılıktan 'bahis' toplantısı
'Bir operasyon daha yapabiliriz'
İsrail ateşkes dinlemiyor
Ateşkesten bu yana 312 kişi katledildi
'En büyük milli kahramanımız Atatürk'tür'
'Siyasi partilerin bir duruşu, çizgisi olmalı'
Yolsuzluğunu bugünkü adresi Balıklı Rum Hastanesi
Sahte reçete ile 112 milyon liralık vurgun
Venezuela: ABD, ülkemizi 51. eyalet yapmak istiyor
"Asla başka bir ülkenin eyaleti olmayacağız"
Zelenskiy, ABD'nin hazırladığı planı değerlendirdi
"Ani açıklamalar yapmayacağız"
Vergiye yönelik düzenleme teklifi TBMM'de
"Bu düzenleme kayıt dışılığı getirecek"
Atatürk’ün hazırlattığı hutbeler
Eksik ölçenler, yanlış tartanlar
'ABD Türkiye'ye F-35 vermez'
'ABD yönetiminden teminat aldık'
AKP Öcalan'a gidecek
Oylamada evet oyu verilecek
Katil Netanyahu Suriye'de
Esad sonrası Suriye'den bir görünüm
'Alarm zilleri yüksek sesle çalıyor'
'Şu anda bir felaketi yaşıyoruz'
Nitelikli çoğunluk yerine basit çoğunluk
MHP'den İmralı oylaması açıklaması
10 maddelik öneri
Erhürman, Hristodulidis ile görüştü
Rakip Romanya
Geçersek Slovakya - Kosova galibiyle oynayacağız
Başsavcılıktan 'bahis' toplantısı
'Bir operasyon daha yapabiliriz'
İsrail ateşkes dinlemiyor
Ateşkesten bu yana 312 kişi katledildi
'En büyük milli kahramanımız Atatürk'tür'
'Siyasi partilerin bir duruşu, çizgisi olmalı'
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.