دوال القواميس
جزء من قسم الأساسيات في رحلة GDScript على Coddy. الدرس 80 من 92.
تحتوي القواميس على أساليب تُخبرك بما تحتويه.
تعيد keys() مصفوفةً بالمفاتيح، وتعيد values() مصفوفةً بالقيم، بترتيب أزواجها:
var player := {"name": "Mia", "hp": 100, "level": 3}
print(player.keys()) # ["name", "hp", "level"]
print(player.values()) # ["Mia", 100, 3]تتحقق has() مما إذا كان المفتاح موجودًا. ويُجري العامل in التحقق نفسه:
print(player.has("hp")) # true
print(player.has("mana")) # false
print("level" in player) # trueتعيد size() عدد الأزواج، وتتحقق is_empty() مما إذا لم يكن هناك أيٌّ منها:
print(player.size()) # 3
print(player.is_empty()) # false
var bag := {}
print(bag.is_empty()) # trueيفحص has() وin المفاتيح فقط، ولا يفحصان القيم أبدًا: player.has("Mia") تساوي false.
التحدي
سهليقرأ البرنامج سطرين من الإدخال: قائمة أزواج مكتوبة بصيغة key:value ومفصولة بفواصل، ومفتاحًا للتحقق منه. يملأ الكود المعطى القاموس info بالفعل من السطر الأول.
اطبع، بهذا الترتيب:
- كل مفتاح، واحدًا في كل سطر
---- كل قيمة، واحدة في كل سطر
---- عدد الأزواج
---trueأوfalse: ما إذا كان القاموس فارغًا---trueأوfalse: ما إذا كان المفتاح من الإدخال الثاني موجودًا
بالنسبة إلى المدخلين name:Mia,hp:100,class:Mage وhp، يكون الناتج:
name
hp
class
---
Mia
100
Mage
---
3
---
false
---
trueجرّب بنفسك
extends Node
func _ready():
var text := OS.read_string_from_stdin()
var key := OS.read_string_from_stdin()
var info := {}
for pair in text.split(","):
var parts := pair.split(":")
info[parts[0]] = parts[1]
# اطبع المفاتيح والقيم والحجم وis_empty وhas(key)
# مع وضع --- بين الأجزاء
pass
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات، الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - حسابات بسيطةمعاملات المقارنة7أساسيات الإدخال والإخراج
الإخراجالإخراج باستخدام المتغيراتتنسيق السلاسل النصيةالإدخالالتحويل بين الأنواعمراجعة - حتى 120مراجعة - صح أم خطأ10الدوال
تعريف دالةالمعاملاتالقيمة المعادةأنواع القيم المعادةمراجعة - دالة سيغمامراجعة - دالة التحققالقيم الافتراضية13التكرار على المصفوفات
التكرار على العناصرالتكرار باستخدام الفهارسالتكرار على السلاسل النصية الجزء 1التكرار على السلاسل النصية الجزء 216متعقّب المصروفات اليومية
نظرة عامة على المشروعإنهاء البرنامج9حلقات التكرار
حلقة forحلقة whileإيقاف الحلقةمتابعة الحلقةمراجعة - المضروبدالة rangeحلقة متداخلةمراجعة - الإدخال الديناميكي12أساسيات المصفوفات
تعريف مصفوفةالوصول إلى عناصر المصفوفةتعديل المصفوفاتدوال المصفوفاتمراجعة - مصفوفة حاصل الضربمراجعة - المصفوفة المعكوسةالمصفوفات ذات الأنواع المحددة15القواميس
إنشاء القواميسالوصول إلى القيمتعديل القواميسدوال القواميسالتكرار عبر القواميسمراجعة - قاموس المخزونتدرّب بنفسك: مترجم GDScript عبر الإنترنت