التحقق من العضوية
جزء من قسم المنطق وتدفّق التنفيذ في رحلة GDScript على Coddy. الدرس 10 من 78.
لقد تحققتَ بالفعل من العضوية باستخدام in وnot in: يتحقق "cat" in pets من وجود عنصر في مصفوفة، بينما يتحقق "ell" in "hello" من وجود نص داخل سلسلة نصية. وهناك ثلاث حالات أخرى تتكرر كثيرًا.
في القاموس، تتحقق in من المفاتيح فقط. للبحث عن قيمة، تحقّق من المصفوفة التي تُعيدها values():
var grades := {"Alice": 85, "Bob": 90}
print("Alice" in grades)
print(90 in grades)
print(90 in grades.values())true
false
trueتتحقق العضوية أيضًا من الأنواع. النص المقروء باستخدام OS.read_string_from_stdin() هو سلسلة نصية، والسلسلة النصية "90" ليست العدد الصحيح 90:
var scores := [70, 90]
print("90" in scores)
print(int("90") in scores)false
trueتحلّ مصفوفة ثابتة من القيم المسموح بها باستخدام in محل سلسلة طويلة من or، وتعمل أيضًا في شرط حارس:
const DIRECTIONS = ["north", "south", "east", "west"]
var dir := "west"
match dir:
var d when d in DIRECTIONS:
print("Going ", d)
_:
print("You cannot go there")Going westالتحدي
سهليحتوي البرنامج على مصفوفة names تضم طلاب صف، وقاموس grades يضم الطلاب الذين لديهم علامة بالفعل. يقرأ اسم طالب في student وعلامة في grade (كنص).
اطبع ثلاثة أسطر:
NAME is in the class.أوNAME is not in the class.، مع التحقق منnamesNAME has a grade.أوNAME has no grade.، مع التحقق من مفاتيحgradesSomeone scored GRADE.أوNobody scored GRADE.، مع التحقق من قيمgrades
استبدل NAME وGRADE بالمدخلات. بالنسبة إلى المدخلين Dana و85، يكون الناتج:
Dana is in the class.
Dana has no grade.
Someone scored 85.جرّب بنفسك
extends Node
func _ready():
var names := ["Alice", "Bob", "Charlie", "Dana"]
var grades := {"Alice": 85, "Bob": 90, "Charlie": 78}
var student := OS.read_string_from_stdin()
var grade := OS.read_string_from_stdin()
# اطبع الأسطر الثلاثة
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفّق التنفيذ
1السلاسل النصية بالتفصيل
أساليب السلاسل النصيةالبحث داخل السلاسل النصيةالاستبدال وإزالة المسافات الطرفيةالتقسيم والدمجمراجعة - التحقق من اسم المستخدم4القواميس، الجزء الثاني
القواميس المتداخلةمصفوفات من القواميسدمج القواميسنسخ القواميسمراجعة - عدّ التكرارات2اتخاذ القرارات المتقدم
المطابقة باستخدام المتغيراتشروط المطابقةأنماط المصفوفاتأنماط القواميسالتحقق من العضويةمراجعة - محلل الأوامر5تطبيق دفتر جهات الاتصال
عرض القائمةإضافة جهة اتصال8مدير سجلات الطلاب
نظرة عامة على المشروعإضافة طالب3المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادالمصفوفات المتعرجةأنماط شائعة للمصفوفات ثنائية الأبعادمراجعة - لوحة اللعبة6المجموعات باستخدام القواميس
ما هي المجموعة؟القاموس كمجموعةالإضافة والإزالةالاتحاد والتقاطعفرق المجموعاتمراجعة - إزالة العناصر المكررة9تجميع البيانات المتقدم
جمع القيمإيجاد الحد الأدنى والحد الأقصىالترتيب المخصصمراجعة - أداة ترتيب القواميستدرّب بنفسك: مترجم GDScript عبر الإنترنت