Menu
CoddyTech

Dizi Dilimleme

Coddy'nin GDScript Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 73 / 92.

slice() yöntemi, öğelerin bir kısmını içeren yeni bir dizi döndürür. slice(begin, end), begin indeksindeki öğeden başlayarak end indeksindeki öğeye kadar olan öğeleri alır, ancak end indeksindeki öğeyi almaz:

var numbers := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(numbers.slice(2, 6))
[2, 3, 4, 5]

end olmadan dilim, dizinin sonuna kadar gider:

print(numbers.slice(5))
[5, 6, 7, 8, 9]

Negatif indeksler sondan saymaya başlar. slice(-3) son üç öğeyi, slice(0, -2) ise son iki öğe dışındaki her şeyi alır:

print(numbers.slice(-3))
print(numbers.slice(0, -2))
[7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7]

Üçüncü argüman olan adım, her n'inci öğeyi alır. slice(1, 8, 2) 1, 3, 5 ve 7 indekslerini alır:

print(numbers.slice(1, 8, 2))
[1, 3, 5, 7]

slice() özgün diziyi değiştirmez: numbers hâlâ on öğenin tamamını içerir.

challenge icon

Görev

Kolay

Program, virgülle ayrılmış öğelerden oluşan bir satırı items dizisine okur (önceden yazılmıştır). Dizinin orta kısmını slice() ile yazdırın:

  • Öğe sayısı tek ise ortadaki öğeyi ve her iki yanındaki birer öğeyi yazdırın (3 öğe; tek bir öğe varsa o öğeyi yazdırın)
  • Sayı çift ise ortadaki iki öğeyi yazdırın

apple,banana,orange,grape için çıktı ["banana", "orange"], a,b,c,d,e için ise ["b", "c", "d"] olur.

Kendin dene

extends Node

func _ready():
	var items := OS.read_string_from_stdin().split(",")
	# Ortadaki öğeleri yazdır
quiz iconKendini test et

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

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Online GDScript derleyicisi