Küme Olarak Sözlük
Coddy'nin GDScript Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 32 / 78.
Bir diziyi kümeye dönüştürmek için üzerinde döngü kur ve her değeri bir anahtar yap. Tekrarlanan değerler aynı anahtara yerleşir:
var reports := ["spam", "scam", "spam"]
var banned := {}
for word in reports:
banned[word] = true
print(banned.keys()) # ["spam", "scam"]Bir değerin üye olup olmadığını kontrol etmek için has() veya in işleçini kullanın. Bir sözlükte ikisi de değerlere değil, anahtarlara bakar:
print(banned.has("scam")) # true
print("hello" in banned) # false
print("hello" not in banned) # trueBir dizide de has() bulunur, ancak değeri öğelerle tek tek karşılaştırır. Sözlük bir anahtarı doğrudan bulur; bu nedenle bir kümede üyelik kontrolü, binlerce üye olsa bile hızlı kalır.
Bir küme üzerinde for döngüsü, öğeleri eklendikleri sırayla dolaşır:
for word in banned:
print(word) # spam, ardından scamGörev
KolayBir partinin kapısında konukları kontrol ediyorsun. Program iki satır girdi okur:
- Konuk listesi: boşluklarla ayrılmış adlar. Bazı adlar birden fazla kez yazılmıştır.
- Gelen kişiler: boşluklarla ayrılmış adlar.
Konuk listesinden guests kümesini oluştur. Listede kaç farklı kişi olduğunu yazdır, ardından gelen her kişi için bir satır yazdır: listedeyse NAME: welcome, değilse NAME: not on the list. Girdi şöyleyse:
mia leo ana mia
mia sam anaçıktı şöyledir:
Guests on the list: 3
mia: welcome
sam: not on the list
ana: welcomeKendin dene
extends Node
func _ready():
var guest_list := OS.read_string_from_stdin().split(" ", false)
var arrivals := OS.read_string_from_stdin().split(" ", false)
var guests := {}
# Konuklar kümesini oluştur
# Konuk sayısını yazdır ve her geleni kontrol et
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