Proje Yöneticileri için Python #8 – Listeler (Lists)


Photo by cottonbro studio on Pexels.com

1. Liste Nedir?

Liste, birden fazla veriyi tek bir değişkende tutmamızı sağlayan, sıralı (ordered) ve değiştirilebilir (mutable) bir veri yapısıdır. Python’daki listeler köşeli parantez [ ] ile tanımlanır.

my_list = [1, 2, 3, 4, 5]

2. Liste Elemanları

Listelerde farklı veri tipleri bir arada bulunabilir:

mixed_list = [42, 'Python', 3.14, True]

Liste içinde başka bir liste bile olabilir (iç içe liste):

nested_list = [1, [2, 3], 4]

3. Liste Elemanlarına Erişim (Indexing)

Python’da dizinler (index) 0’dan başlar:

fruits = ['elma', 'muz', 'kiraz']
print(fruits[0])   # elma
print(fruits[2])   # kiraz

Negatif indeksler sondan başlamayı sağlar:

print(fruits[-1])  # kiraz
print(fruits[-2])  # muz

4. Dilimleme (Slicing)

Bir listenin belli bir kısmını almak için liste[start:stop] yazılır.

numbers = [10, 20, 30, 40, 50]
print(numbers[1:4])  # [20, 30, 40]
print(numbers[:3])   # [10, 20, 30]
print(numbers[3:])   # [40, 50]

5. Liste Elemanlarını Değiştirme

Listeler değiştirilebilen (mutable) yapılardır.

colors = ['kırmızı', 'yeşil', 'mavi']
colors[1] = 'sarı'
print(colors)  # ['kırmızı', 'sarı', 'mavi']

6. Liste Metotları

Python’da listelerle çalışmayı kolaylaştıran birçok yerleşik metod vardır:

append()

: Listeye eleman ekler

my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # [1, 2, 3, 4]

insert(index, value)

: Belirtilen index’e eleman ekler

my_list.insert(1, 99)
print(my_list)  # [1, 99, 2, 3, 4]

remove(value)

: İlk bulunan elemanı siler

my_list.remove(2)
print(my_list)  # [1, 99, 3, 4]

pop(index)

: Belirtilen index’teki elemanı çıkarır (index verilmezse sonuncuyu çıkarır)

my_list.pop()      # 4 çıkarıldı
my_list.pop(0)     # 1 çıkarıldı

sort()

: Listeyi sıralar (kalıcı)

nums = [3, 1, 4, 2]
nums.sort()
print(nums)  # [1, 2, 3, 4]

sorted()

: Sıralı yeni liste döner (orijinali değişmez)

nums = [3, 1, 4, 2]
print(sorted(nums))  # [1, 2, 3, 4]
print(nums)          # [3, 1, 4, 2]

reverse()

: Listeyi ters çevirir

nums.reverse()
print(nums)  # [2, 4, 1, 3]

len()

: Liste uzunluğunu verir

len(nums)  # 4

7. Liste İçinde Dolaşmak (Loop)

names = ['Ali', 'Ayşe', 'Mehmet']
for name in names:
    print(name)

8. Liste Oluşturmanın Kısa Yolu: List Comprehension

Listeleri hızlı oluşturmak için kullanılır:

squares = [x**2 for x in range(5)]
print(squares)  # [0, 1, 4, 9, 16]

9. Listeyi Temizleme

my_list.clear()
print(my_list)  # []

10. Liste Kopyalama

copy_list = my_list.copy()

Örnek: Proje Yöneticilerine Yönelik Liste Kullanımı

Bir proje yöneticisi görev listesini Python’da liste olarak tutabilir:

task_list = ['Kapsam Tanımı', 'Zaman Planı', 'Bütçe Hesaplama']
task_list.append('Risk Analizi')
print("Güncel Görevler:", task_list)

5 Uygulama Sorusu


Görev 1: Şehirler Listesi

cities = ['Paris', 'Tokyo', 'Berlin', 'New York', 'İstanbul']

Görev:

  • Listenin ilk şehrini yazdırın.
  • Listenin son şehrini yazdırın.
  • Listede kaç şehir olduğunu yazdırın (len() fonksiyonunu kullanın).

Görev 2: Meyveler Listesi

fruits = ['elma', 'muz', 'kiraz']

Görev:

  • ‘muz’ öğesini ‘portakal’ ile değiştirin.
  • Listenin sonuna ‘üzüm’ ekleyin.
  • ‘elma’yı listeden silin.
  • Listenin son halini yazdırın.

Görev 3: Filmler Listesi

movies = ['Inception', 'Avatar', 'The Matrix', 'Interstellar']

Görev:

Listeyi döngü ile dolaşın ve her film için şu formatta bir mesaj yazdırın:

“Ben <film> izlemeyi çok seviyorum!”


Görev 4: Sayılar Listesi

numbers = [34, 12, 5, 66, 29, 100, 3]

Görev:

  • Dilimleme (slicing) kullanarak ilk 3 sayıyı yazdırın.
  • Listeyi artan sıraya göre sıralayın ve yazdırın.
  • Sıralanmış listenin son 2 elemanını yazdırın.

Görev 5: Çift Sayıların Karesini Oluşturma

Bu görevde başlangıç listesi yoktur — listeyi kendiniz oluşturmanız gerekiyor.

Görev:

  • 1 ile 20 arasındaki çift sayıların karelerinden oluşan bir listeyi liste kavrayışı (list comprehension) kullanarak oluşturun.
  • Oluşturduğunuz listeyi yazdırın.

Cevaplar


Görev 1: Şehirler Listesi

cities = ['Paris', 'Tokyo', 'Berlin', 'New York', 'İstanbul']

print(cities[0])       # Paris
print(cities[-1])      # İstanbul
print(len(cities))     # 5

Görev 2: Meyveler Listesi

fruits = ['elma', 'muz', 'kiraz']

fruits[1] = 'portakal'    # muz yerine portakal
fruits.append('üzüm')     # liste sonuna üzüm
fruits.remove('elma')     # elma silindi

print(fruits)  # ['portakal', 'kiraz', 'üzüm']

Görev 3: Filmler Listesi

movies = ['Inception', 'Avatar', 'The Matrix', 'Interstellar']

for movie in movies:
    print(f"Ben {movie} izlemeyi çok seviyorum!")

🖨️ Çıktı:

Ben Inception izlemeyi çok seviyorum!
Ben Avatar izlemeyi çok seviyorum!
Ben The Matrix izlemeyi çok seviyorum!
Ben Interstellar izlemeyi çok seviyorum!

Görev 4: Sayılar Listesi

numbers = [34, 12, 5, 66, 29, 100, 3]

print(numbers[:3])  # [34, 12, 5]

numbers.sort()
print(numbers)      # [3, 5, 12, 29, 34, 66, 100]

print(numbers[-2:]) # [66, 100]

Görev 5: Çift Sayıların Karesi (List Comprehension)

even_squares = [x**2 for x in range(1, 21) if x % 2 == 0]

print(even_squares)  
# [4, 16, 36, 64, 100, 144, 196, 256, 324, 400]

Google Colab ile Kendiniz Deneyin: https://colab.research.google.com/drive/11XI7qqcjyfLnyYyo3vF6pjS1YC9QFfII?usp=sharing

Bir Cevap Yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.