logo
06 ARALIK 2025


Python 106-List veri yapısı

09.02.2021 00:00:00
'Python 106-List veri yapısı' seslendirme dosyası:

Merhabalar,

Bugün birden fazla veriyle yoğun bir işlem trafiğine gireceğiz. Hatırlayalım, tek bir kişinin kilosunu nasıl kodluyorduk: kilo = 75. Bilgisayar hafızasında kilo isminde bir kutu/ alan açıyor ve orada istediğimiz sayıyı tutuyordu. Şimdi bu kutulardan yanyana birden fazla olduğunu düşünelim.

Diyelim ki 4 kişinin ağırlık ortalamasını bulmak istiyorsunuz ve herkesin kilosunu tutacak bir veri yapısı lazım. Kilo bilgilerini virgülle ayırıp köşeli paranteze almak yeterli : [53, 60, 75, 80]. Tek seferde tüm sayılara ulaşmak için bunu kilolar isimli bir değişkende tutalım: kilolar = [53, 60, 75, 80]. Bakın bu kilolar listesi üzerinde neler yapabiliyoruz. Yeni ingilizce bazı kelimeler gelecek, hazırlıklı olalım.

* print(kilolar) dediğimizde tüm kiloları görürken, len(kilolar) ifadesi bize listemizin eleman sayısı olan 4'ü verecektir. sum(kilolar) deneyin, toplam kiloyu bulacaksınız. O zaman şu kod bize ortalama kiloyu verecektir:

          print(sum(kilolar) / len(kilolar))   # 67.0

* Listemizin her bir elemanına ulaşmak için liste adının sonuna köşeli parantez içinde istediğimiz elemanın sıra numarasını yazıyoruz. Bu sayıya index te denir ve 1 den değil sıfırdan başlar. Yani kilolar[0] listemizdeki ilk eleman olan 53'ü verirken kilolar[1] ikinci eleman olan 60 ı verecektir.

* Diyelim ki 88 kilo ağırlığında bir kişi daha geldi ve hesabı yeniden yapacağız. Önce onu listeye ekleyelim. Liste ismini yazıyoruz, sonuna bir nokta koyuyoruz, append kelimesini kullanarak parantez içinde kiloyu yazıyoruz: kilolar.append(88). Son haliyle listemiz : [53, 60, 75, 80, 88] olacaktır.

* 90 ve 95 kiloluk 2 kişiyi daha gruba tek hamleyle nasıl ekleriz? Liste ismi, nokta, extend kelimesi, parantez içinde virgülle değerler: kilolar.extend(90, 95), tek seferde. 100 kiloluk birini en sona değil de, 2. konuma nasıl ekleriz? Liste ismi, nokta, insert kelimesi, parantez içinde konum, virgül, değer: kilolar.insert(2, 100). Son durum : [53, 60, 100, 75, 80, 88, 90, 95]

* Ortadaki 75 kiloyu listeden nasıl atarız? Liste ismi, nokta, remove kelimesi, parantez içinde silinecek değer: kilolar.remove(75). Aynı değerden birden fazla varsa sola en yakın olan atılır. 80 değerinden listede kaç tane var? Liste ismi, nokta, count kelimesi, parantez içinde aranan değer: kilolar.count(80).

* Peki, sıra numarasını bildiğimiz elemanı nasıl sileriz? del kelimesi, boşluk, liste ismi, köşeli parantez içinde sıra numarası: del kilolar[2] 3. elemanı siler. Özel olarak grubun son elemanını nasıl sileriz? Liste ismi, nokta, pop kelimesi, aç parantez, kapa parantez: kilolar.pop().

* En baştaki 53 hatalıymış, nasıl 43 yaparız: kilolar[0] = 43. İlk kutudan 53 atıldı, yerine 43 kondu.

* 88 kilolu elemanın index (sıra) numarası ne? kilolar.index(88). Listemizde 120 kilo ağırlığında kimse var mı, varsa bana True ver, yoksa False ver. Çözüm; aradığımız değer, boşluk, in kelimesi, boşluk liste ismi: 120 in kilolar. Bu in kelimesi güzel ve özel bir kelime sakın unutmayın.

* Listeyi tersten ver: kilolar.reverse(). Listeyi sırala: kilolar.sort(). Listeyi tersten sırala: kilolar.sort(reverse = True). Listeyi boşalt: kilolar.clear().

* Toplam: sum(kilolar), en ağır eleman: max(kilolar), en hafif eleman: min(kilolar).

Bu özellikleri siz de muhakkak aşağıdaki online sitelerden birinde deneyin. Pratik yapma kodlamada da çok önemli unutmayın. Tekrar görüşmek dileklerimle.

* programiz.com

* repl.it/languages/python3

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

--
 
Nahit Taşpınar / diğer yazıları
Bahçeli'den bir İmralı açıklaması daha
'Mesajları makul, müspet, muteber ve muayyendir'
Feci kaza: 7 ölü, 11 yaralı
Yolcu otobüsü tıra çarptı
Güney Afrika'dan ABD'ye 'G20' tepkisi
"Hiçbir üyenin Güney Afrika'yı G20'den dışlama hakkı yoktur"
BM Nüfus Fonu temsilci açıkladı
Gazze'de hayatta kalma ve belirsizlik arasında yaşam mücadelesi
Hakem kararları maça gölge düşürdü
Galatasaray Samunspor'u 3-2 yendi
Pembe tablo çizdi
'Enflasyon düşüyor, düşmeye devam edecek'
Büyük kongre Pazar günü
'İstikbal Biziz, Biz Geleceğiz'
Bürokratlara zam kararına tepki
'Dar gelirli sürünüyor böyle olmaz'
Bahis ve şike soruşturması
Futbolcular, hakemler, başkanlar, yorumcular..!
Futbolda bahis skandalında yeni dalga operasyon
Ahmet Çakar, çok sayıda profesyonel futbolcu ve yönetici gözaltında
Mersin'de maaşlarını alamayan işçiler, adliye önünde toplandı
Bazı çalışanları müstehcen fotoğraflarla tehdit etmişler
11. Yargı Paketi, TBMM Adalet Komisyonunda kabul edildi
Kovid 19 düzenlemesi onaylandı
İsrail hükümetinin Gazze'de kirli planları
Suç örgütü lideri Ebu Şebab'ı desteklemiş
BM'den 'Ukrayna savaşı' açıklaması
"Ateşkese yakın olduğumuzu hissetmiyoruz"
Suriye ile SDG çatıştı
Entegrasyon olacaksa çatışma niye?
Bahçeli'den bir İmralı açıklaması daha
'Mesajları makul, müspet, muteber ve muayyendir'
Feci kaza: 7 ölü, 11 yaralı
Yolcu otobüsü tıra çarptı
Güney Afrika'dan ABD'ye 'G20' tepkisi
"Hiçbir üyenin Güney Afrika'yı G20'den dışlama hakkı yoktur"
BM Nüfus Fonu temsilci açıkladı
Gazze'de hayatta kalma ve belirsizlik arasında yaşam mücadelesi
Hakem kararları maça gölge düşürdü
Galatasaray Samunspor'u 3-2 yendi
Pembe tablo çizdi
'Enflasyon düşüyor, düşmeye devam edecek'
Büyük kongre Pazar günü
'İstikbal Biziz, Biz Geleceğiz'
Bürokratlara zam kararına tepki
'Dar gelirli sürünüyor böyle olmaz'
Bahis ve şike soruşturması
Futbolcular, hakemler, başkanlar, yorumcular..!
Futbolda bahis skandalında yeni dalga operasyon
Ahmet Çakar, çok sayıda profesyonel futbolcu ve yönetici gözaltında
Mersin'de maaşlarını alamayan işçiler, adliye önünde toplandı
Bazı çalışanları müstehcen fotoğraflarla tehdit etmişler
11. Yargı Paketi, TBMM Adalet Komisyonunda kabul edildi
Kovid 19 düzenlemesi onaylandı
İsrail hükümetinin Gazze'de kirli planları
Suç örgütü lideri Ebu Şebab'ı desteklemiş
BM'den 'Ukrayna savaşı' açıklaması
"Ateşkese yakın olduğumuzu hissetmiyoruz"
Suriye ile SDG çatıştı
Entegrasyon olacaksa çatışma niye?
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.