Menu
Coddy logo textTech

Liste Dilimleme Bölüm 2

Coddy'nin Python Journey'sinin Fundamentals bölümünün bir parçası — ders 65 / 77.

Dilimleme işleminin başka bir adım (step) parametresi daha vardır: lst[start:stop:step], Örneğin şu listeyi ele alalım:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

İndeks 1'den 8'e kadar olan her ikinci öğeyi alır:

print(numbers[1:8:2])
# Çıktı: [1, 3, 5, 7]

İndeks 2'den başlayarak her üçüncü öğeyi alır:

print(numbers[2::3])
# Çıktı: [2, 5, 8]

Dilimleme işlemi negatif indeksleri de destekler.

Sondan sayma:

print(numbers[-3:])
# Çıktı: [7, 8, 9]

Burada, -3 "sondan 3 konum geriden başla" anlamına gelir

Sona kadar say:

print(numbers[:-2])    
# Çıktı: [0, 1, 2, 3, 4, 5, 6, 7]

Burada, -2 "sondan 2 konum önce dur" (hariç) anlamına gelir

Negatif adım ile tersine çevirme:

print(numbers[::-1])
# Çıktı: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  • İlk : işaretinden önceki boşluk "baştan başla" anlamına gelir
  • : işaretleri arasındaki boşluk "sonuna kadar git" anlamına gelir
  • -1, "her seferinde bir adım geriye git" anlamına gelir 
challenge icon

Görev

Kolay

Girdi olarak bir liste alan (given) ve aşağıdaki dilimleme (slicing) işlemlerine dayanarak üç yeni liste yazdıran bir program oluşturun:

  • İndeks 1'den (ikinci öğe) başlayarak her üçüncü öğeyi içeren bir liste
  • 6. öğeden 1. öğeye kadar tüm öğeleri ters sırada içeren bir liste
  • Listenin ortasından sonuna kadar her ikinci öğeyi içeren bir liste

Kopya kağıdı

Dilimleme sözdizimi: lst[start:stop:step]

Dilimleme örnekleri:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# İndeks 1'den 8'e kadar her ikinci eleman
print(numbers[1:8:2])  # Çıktı: [1, 3, 5, 7]

# İndeks 2'den itibaren her üçüncü eleman
print(numbers[2::3])  # Çıktı: [2, 5, 8]

# Son üç eleman
print(numbers[-3:])  # Çıktı: [7, 8, 9]

# Son iki eleman hariç tüm elemanlar
print(numbers[:-2])  # Çıktı: [0, 1, 2, 3, 4, 5, 6, 7]

# Listeyi tersine çevir
print(numbers[::-1])  # Çıktı: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

Önemli noktalar:

  • Negatif indeksler listenin sonundan itibaren sayılır
  • İlk : işaretinden önceki boşluk "baştan başla" anlamına gelir
  • : işaretleri arasındaki boşluk "sonuna kadar git" anlamına gelir
  • Negatif adım sırayı tersine çevirir

Kendin dene

lst = input().split(",")
# Kodunuzu aşağıya yazın
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fundamentals bölümündeki tüm dersler