מילון בתור קבוצה
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-GDScript של Coddy. שיעור 32 מתוך 78.
כדי להפוך מערך לקבוצה, עברו בלולאה על המערך והפכו כל ערך למפתח. ערכים חוזרים מופיעים באותו מפתח:
var reports := ["spam", "scam", "spam"]
var banned := {}
for word in reports:
banned[word] = true
print(banned.keys()) # ["spam", "scam"]כדי לבדוק אם ערך הוא איבר, השתמשו ב־has() או באופרטור in. במילון, שניהם בודקים את המפתחות, ולעולם לא את הערכים:
print(banned.has("scam")) # true
print("hello" in banned) # false
print("hello" not in banned) # trueלמערך יש גם has(), אבל הוא משווה את הערך לאיברים אחד־אחד. מילון מוצא מפתח ישירות, ולכן בדיקת חברות בקבוצה נשארת מהירה גם עם אלפי איברים.
לולאת for על קבוצה עוברת על האיברים שלה, לפי הסדר שבו הם נוספו:
for word in banned:
print(word) # spam, ואז scamאתגר
קלאתה בודק את האורחים בכניסה למסיבה. התוכנית קוראת שתי שורות קלט:
- רשימת האורחים: שמות מופרדים ברווחים. חלק מהשמות מופיעים יותר מפעם אחת.
- האנשים שמגיעים: שמות מופרדים ברווחים.
בנה את הקבוצה guests מתוך רשימת האורחים. הדפס כמה אנשים שונים מופיעים ברשימה, ואז שורה אחת לכל אדם שמגיע: NAME: welcome אם הוא מופיע ברשימה, או NAME: not on the list. עבור הקלט:
mia leo ana mia
mia sam anaהפלט הוא:
Guests on the list: 3
mia: welcome
sam: not on the list
ana: welcomeנסו בעצמכם
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 := {}
# בנו את קבוצת האורחים
# הדפיסו את מספר האורחים ובדקו כל הגעה
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
2קבלת החלטות מתקדמת
התאמה עם משתניםתנאי סף להתאמהתבניות מערכיםתבניות מילוניםבדיקות חברותסיכום – מנתח פקודות5אפליקציית ספר אנשי קשר
הצגת התפריטהוספת איש קשר8מנהל רשומות תלמידים
סקירת הפרויקטהוספת תלמידתרגלו בעצמכם: קומפיילר GDScript אונליין