تخصيص الوظائف
Learn to create your own functions for specific tasks.
سنغطي ما يلي...
حتى الآن، أضفنا العديد من الوظائف إلى عالم إدوارد. سواءً أكانت القدرة على turn()
move()
وتنفيذ المهام ( place_plant()
remove trash()
) والتواصل (باستخدام print()
input()
) أو حتى تذكر البيانات (المتغيرات!)، فقد قطعنا شوطًا طويلًا في تعلم بايثون.
حان الوقت لتحسين عالمه أكثر. لكن أولًا، تفاعل مع الأداة أدناه، ثم لدينا سؤال لك.
هل وجدت الأمر مرهقًا أو مكررًا بعض الشيء عندما كان يتعين علينا الضغط على زر الدوران عدة مرات لتحويل إدوارد نحو اتجاه معين؟
ألم يكن الأمر أسهل لو استطعنا فقط توجيه إدوارد للانعطاف يسارًا أو يمينًا؟ لنتفاعل مع الأداة أدناه لنفهم ما نعنيه.
أليس هذا أفضل بكثير؟ يمكننا الآن بسهولة توجيه إدوارد للانعطاف يسارًا أو يمينًا. لكن كيف فعلنا ذلك؟
من خلال إنشاء وظائفنا الخاصة!
الوظائف المحددة من قبل المستخدم في بايثون
حتى الآن، استخدمنا الدوال الجاهزة فقط. لم نكن مهتمين بكيفية عمل هذه الدوال أو برمجتها. كنا نستدعيها (نستخدمها) فقط عند الحاجة إليها. الدوال المدمجة ( input()
print()
int()
وغيرها) تشبه الوصفات القياسية الجاهزة للطهي التي نعرف كيفية استخدامها مسبقًا.
قد تظن أن بايثون تحتوي على دالة مدمجة (جاهزة) لكل حالة. لكن لا يمكن أن نمتلك دالة جاهزة لتلبية جميع احتياجات العالم. بدلاً من ذلك، تتيح لنا بايثون إنشاء دوال خاصة بنا يمكننا استخدامها عند الحاجة.
لقد حان الوقت لنتعلم كيفية إنشاء وظائفنا الخاصة.
تشبيه للوظائف
تخيّل الدالة كوصفة بمكوناتها وخطواتها. في بايثون، تحتوي الدالة المُعرّفة من قِبل المستخدم على مُعاملات (مثل المكونات) وتعليمات (الشيفرة داخل الدالة).
هذا هو الهيكل الأساسي للوظيفة المحددة من قبل المستخدم:
def function_name(parameter1, parameter2,..., parameterN ):# Function body# ...return result# For Python this and the following lines are not part of above function def
نستخدم الكلمة المفتاحية def
...