Bölme ve Birleştirme
Coddy'nin GDScript Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 4 / 78.
İşlem dizelerini split() ile zaten böldün ve dizileri join() ile birleştirdin. Her ikisi de daha fazlasını yapabilir.
split() parçaları, ayırıcıların arasında göründükleri biçimiyle ve boşluklar da dahil olmak üzere dizelerdir. Her parçayı kullanmadan önce temizleyin veya dönüştürün. Sonuçtaki bir öğe, dizini aracılığıyla değiştirilebilir:
var items := "sword, shield ,bow".split(",")
print(items)
for i in range(items.size()):
items[i] = items[i].strip_edges()
print(items)["sword", " shield ", "bow"]
["sword", "shield", "bow"]split() işlevinin ikinci argümanı daha önce gördüğün argümandır: true boş parçaları korur, false ise onları atar. Üçüncü bir argüman kesme sayısını sınırlar. split(" ", true, 1) yalnızca ilk boşlukta keser; bu da bir komutu satırın geri kalanından ayırır:
print("say hello there".split(" ", true, 1))["say", "hello there"]rsplit() aynı şekilde çalışır ancak kesmeleri sağdan sayar; bu nedenle bir dosya adının son noktasında kesebilir:
print("save.backup.json".rsplit(".", true, 1))["save.backup", "json"]join() ayrıca bir sayı dizisini kabul eder ve her birini metne dönüştürür: ", ".join([3, 1, 2]) sonucu "3, 1, 2" olur.
Görev
KolayProgram, virgülle ayrılmış sözcüklerden oluşan bir satırı line içine okur. Sözcüklerin çevresinde boşluklar olabilir; örneğin red, green ,blue.
Üç satır yazdırın:
- Sözcük sayısı
- Çevresinde boşluk olmayan sözcükleri büyük harfle,
>(boşluk, büyüktür işareti, boşluk) ile birleştirerek - Boşluk içermeyen en uzun sözcük. Birden fazla sözcük aynı uzunluktaysa ilkini yazdırın
red, green ,blue girdisi için çıktı şöyledir:
3
RED > GREEN > BLUE
greenKendin dene
extends Node
func _ready():
var line := OS.read_string_from_stdin()
# Sayıyı, birleştirilmiş sözcükleri ve en uzun sözcüğü yazdır
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1String’leri Derinlemesine İnceleme
String MetotlarıString’lerde AramaDeğiştirme ve KırpmaBölme ve BirleştirmeTekrar: Kullanıcı Adı Kontrolü4Sözlükler Bölüm 2
İç İçe SözlüklerSözlük DizileriSözlükleri BirleştirmeSözlükleri KopyalamaTekrar - Frekans Sayacı10İleri Düzey Fonksiyonlar
Birden Fazla Değer DöndürmeLambda Fonksiyonları Bölüm 1Lambda Fonksiyonları Bölüm 2Tekrar - Lambda ile SıralamaÖzyinelemeli Fonksiyonlar Bölüm 1Özyinelemeli Fonksiyonlar Bölüm 2Tekrar - İç İçe Dizilerin Toplamı13Envanter Yönetim Sistemi
Projeye Genel BakışÜrün Ekle2İleri Düzey Karar Verme
Değişkenlerle EşleştirmeEşleştirme KoşullarıDizi KalıplarıSözlük KalıplarıÜyelik KontrolleriÖzet - Komut Ayrıştırıcı5Rehber Uygulaması
Menüyü GörüntüleKişi Ekle8Öğrenci Kayıt Yöneticisi
Proje Genel BakışıÖğrenci Ekle11Üst Düzey Fonksiyonlar
map Metodufilter Metodureduce Metoduany ve allTekrar - E-posta DoğrulayıcıTekrar - Sayı İşleyici3Çok Boyutlu Diziler
2B Dizilere Giriş2B Dizi Elemanlarına Erişim2B Dizilerle İç İçe DöngülerTekrar - 2B DizilerDüzensiz DizilerYaygın 2B Dizi ÖrüntüleriTekrar - Oyun Tahtası6Sözlüklerle Kümeler
Küme Nedir?Küme Olarak SözlükEkleme ve SilmeBirleşim ve KesişimKüme FarkıTekrar: Yinelenenleri Silme9Gelişmiş Veri Toplama
Değerleri ToplamaEn Küçük ve En Büyük Değeri BulmaÖzel SıralamaÖzet - Sözlük SıralayıcıKendi başına pratik yap: Online GDScript derleyicisi