المطابقة باستخدام المتغيرات
جزء من قسم المنطق وتدفّق التنفيذ في رحلة GDScript على Coddy. الدرس 6 من 78.
في درس عبارة المطابقة، كان كل نمط قيمة حرفية، مثل 1: أو "bow":. ويمكن أن يكون النمط أيضًا ثابتًا أو متغيرًا: تقارن match القيمة بما يحمله ذلك الاسم عند تنفيذ السطر:
const SECRET := 42
var guess := 42
match guess:
SECRET:
print("You found it!")
_:
print("Try again")You found it!النمط الجديد الثاني هو نمط الربط: var متبوعًا باسم جديد. مثل _، يطابق أي قيمة، كما يخزّن تلك القيمة في المتغير الجديد، الذي يمكنك استخدامه داخل كتلته:
var level := 5
match level:
1:
print("Tutorial")
var n:
print("Level %d is locked" % n)Level 5 is lockedيكون نمط الربط أكثر فائدة عندما تطابق نتيجة تعبير ليس له اسم خاص به:
var roll_a := 4
var roll_b := 6
match roll_a + roll_b:
12:
print("Double six!")
var total:
print("You rolled ", total)You rolled 10يطابق نمط الربط كل شيء، لذا يأتي أخيرًا، مثل _. يجب أن يكون اسمه جديدًا: فكتابة var level: في المثال الثاني ستكون خطأ، لأن level موجود بالفعل. ولا يمكنه أيضًا مشاركة سطر مع أنماط أخرى مفصولة بفواصل.
تقارن match الأنواع بصرامة: السلسلة النصية "5" لا تطابق النمط 5، وكذلك العدد العشري 5.0. حوّل النص المقروء من الإدخال باستخدام int() قبل مطابقته مع الأعداد.
التحدي
سهلاكتب فحصًا لتخمين رقم. يحتوي الثابت SECRET على الرقم السري، ويقرأ البرنامج تخمين اللاعب كعدد صحيح في guess.
اكتب تعليمة match على guess بثلاثة أنماط:
- الثابت
SECRET: اطبعCorrect! 0: اطبعYou gave up.- نمط إسناد لأي تخمين آخر: اطبع التخمين متبوعًا بـ
is not the number.
بالنسبة إلى الإدخال 17، يكون الناتج:
17 is not the number.جرّب بنفسك
extends Node
func _ready():
const SECRET := 42
var guess := int(OS.read_string_from_stdin())
# اكتب عبارة match أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفّق التنفيذ
1السلاسل النصية بالتفصيل
أساليب السلاسل النصيةالبحث داخل السلاسل النصيةالاستبدال وإزالة المسافات الطرفيةالتقسيم والدمجمراجعة - التحقق من اسم المستخدم4القواميس، الجزء الثاني
القواميس المتداخلةمصفوفات من القواميسدمج القواميسنسخ القواميسمراجعة - عدّ التكرارات2اتخاذ القرارات المتقدم
المطابقة باستخدام المتغيراتشروط المطابقةأنماط المصفوفاتأنماط القواميسالتحقق من العضويةمراجعة - محلل الأوامر5تطبيق دفتر جهات الاتصال
عرض القائمةإضافة جهة اتصال8مدير سجلات الطلاب
نظرة عامة على المشروعإضافة طالب3المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادالمصفوفات المتعرجةأنماط شائعة للمصفوفات ثنائية الأبعادمراجعة - لوحة اللعبة6المجموعات باستخدام القواميس
ما هي المجموعة؟القاموس كمجموعةالإضافة والإزالةالاتحاد والتقاطعفرق المجموعاتمراجعة - إزالة العناصر المكررة9تجميع البيانات المتقدم
جمع القيمإيجاد الحد الأدنى والحد الأقصىالترتيب المخصصمراجعة - أداة ترتيب القواميستدرّب بنفسك: مترجم GDScript عبر الإنترنت