מתודות של מילון
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 76 מתוך 88.
Ruby מספקת כמה מתודות מובנות שעוזרות לך לבדוק ולעבוד עם גיבובים ביעילות רבה יותר. המתודות האלה מעניקות לך גישה מהירה למידע על התוכן של הגיבוב שלך.
השיטה keys מחזירה מערך של כל המפתחות בגיבוב:
person = {"name" => "Alice", "age" => 25, "city" => "Paris"}
puts person.keys # מדפיס את name, age ו-city, כל אחד בשורה נפרדתבאופן דומה, המתודה values מחזירה מערך של כל הערכים:
person = {"name" => "Alice", "age" => 25, "city" => "Paris"}
puts person.values # מדפיס את Alice, 25 ו-Paris, כל אחד בשורה נפרדתכדי לבדוק אם מפתח מסוים קיים, השתמשו ב־key? או בכינוי שלו has_key?:
person = {"name" => "Alice", "age" => 25}
puts person.key?("name") # פלט: true
puts person.key?("country") # פלט: falseהשיטה length מציינת כמה צמדי מפתח-ערך מכילה טבלת הגיבוב:
person = {"name" => "Alice", "age" => 25, "city" => "Paris"}
puts person.length # פלט: 3לבסוף, empty? בודקת אם יש בטבלת הגיבוב זוגות כלשהם:
data = {}
puts data.empty? # פלט: trueאתגר
קלקרא שתי שורות קלט:
- Hash המיוצג כזוגות מפתח-ערך המופרדים בפסיקים, בתבנית
key:value(לדוגמה,name:Alice,age:25,city:Paris) - מפתח שיש לבדוק אם הוא קיים (מחרוזת)
נתח את הקלט הראשון כדי ליצור Hash, ואז השתמש בשיטות של Hash שלמדת כדי להציג את המידע הבא, כל פריט בשורה משלו:
- הדפס כל מפתח ב-Hash (אחד בכל שורה)
- הדפס
---כמפריד - הדפס כל ערך ב-Hash (אחד בכל שורה)
- הדפס
---כמפריד - הדפס את מספר זוגות המפתח-ערך ב-Hash
- הדפס
---כמפריד - הדפס
trueאוfalseכדי לציין אם ה-Hash ריק - הדפס
---כמפריד - הדפס
trueאוfalseכדי לציין אם המפתח מהקלט השני קיים ב-Hash
לדוגמה, אם הקלט הוא name:Alice,age:25,city:Paris ו-age, הפלט אמור להיות:
name
age
city
---
Alice
25
Paris
---
3
---
false
---
trueאם הקלט הוא product:Laptop,price:999 ו-stock, הפלט אמור להיות:
product
price
---
Laptop
999
---
2
---
false
---
falseאם הקלט הוא status:active ו-status, הפלט אמור להיות:
status
---
active
---
1
---
false
---
trueנסו בעצמכם
# קראו את הקלט
input_string = gets.chomp
key_to_check = gets.chomp
# נתחו את מחרוזת הקלט כדי ליצור hash
hash = {}
input_string.split(',').each do |pair|
key, value = pair.split(':')
hash[key] = value
end
# TODO: כתבו את הקוד שלכם למטה
# השתמשו במתודות של hash כדי:
# 1. להדפיס כל מפתח (אחד בכל שורה)
# 2. להדפיס "---" כמפריד
# 3. להדפיס כל ערך (אחד בכל שורה)
# 4. להדפיס "---" כמפריד
# 5. להדפיס את מספר זוגות המפתח-ערך
# 6. להדפיס "---" כמפריד
# 7. להדפיס true/false אם hash ריק
# 8. להדפיס "---" כמפריד
# 9. הדפיסו true/false אם key_to_check קיים ב-hashהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי11מערכים
יצירת מערכיםגישה לאיברי מערךשינוי מערכיםמתודות של מערכיםחזרה – מערך מכפלותחזרה – מערך הפוךקיצורי דרך למערכים14מילונים (Hashes)
יצירת מילוניםגישה לאיברים במילוןשינוי מילוניםמתודות של מילוןסיכום — מילון מוצריםסמלים כמפתחות במילון3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין