السبت، 23 أبريل 2011

الدوال في بايثون Functions in Python

مرحبا بكم من جديد...
عن الدوال سنتحدث اليوم
الدوال رياضيا - باختصار مخل - هي معادلة رياضية ما نقوم بادخال مدخلاتها فتخرج لنا ناتجها
والوصف لغير الرياضيين يمكن ان يكون مثل الماكينة التي تدخل لها الثور من جهة فيخرج لك بولوبيف من الجهة الاخرى
والوصف لمن يودو ان يكونوا برمجيين
فالدوال عبارة عن برنامج صغير يقوم بمعالجة شيء محدد نقوم بعزله في اطار ما -الدالة- ليمكننا اعادة استخدامه مرات اخرى
والبرامج عادة تتكون من مجموعة من الدوال اما منفصلة -وتدعى هذة البرامج برامج هيكلية structure programs -  واما ان تكون هذة الدوال في اطر اكثر تنظيما مثل الفئات Classes - وتدعى هذة البرامج برامج كائنية التوجهه - object oriented programs - وفي كل الحالات تحتفظ الدوال بمفهومها وتعريفها
دعونا نضرب بعض الامثلة
طفل صغير نقوم بتعليمه المشي مثلا
هذة دالة بذلنا فيها مجهود ما
وقت ما صببنا كل تركيزنا على تعليم هذا الطفل دالة السير
قلنا له مثلا
عليك ان تحمل وزنك كله على احدى ساقيك ثم تحرك الساق الاخرى الى الامام قليلا ثم تحمل وزنك كله على ساقك الامامية ثم تفعل ذلك مرارا حتى تصل لوجهتك

هذه هي دالة السير

يمكننا ايضا تعليمه دالة الركض
وهي تشبه دالة السير باختلافات قليلة
مثلا سنبدل كل "ثم" بــ "فــ" للدلالة على السرعة
سنخبره انه حين يقوم بتحميل وزنه على احدى ساقيه ونقل الاخرى للامام عليه ان يثني ركبة الساق الثابته ليتثنى له نقل الساق الاخرى للامام مسافه اكبر

وهكذا
في البرامج الهيكلية

يمكننا استدعاء دالة السير مثلا بان نخبره

خذ هذه الاشياء و(سر) الى (غرفتك)
هنا قمنا باستدعاء دالة لسير وقمنا باعطاءها مدخلها -parameter- وهو الوجهة التي سيتوقف عندها عن السير


الهدف من البرنامج الاخير ليس السير
ولكنه نقل الاشياء الى الغرفة
لكن دالة السير مازالت محتفظة باستقلاليتها ووحدتها التي تمكننا من اعادة استخدامها بشكل مختلف كل مرة

نعود الان للبرمجة

من المفترض ان كل لغات البرمجة توفر مجموعة من الدوال الاساسية التي تسهل للمبرمج كتابة برامجه
نتحدث هنا عن بايثون لذا دعنا نقوم بالتخصص

هل تذكرون درس العمليات الحسابية في بايثون؟

حين قمنا بضرب هذا المثال لتوضيح عملية الرفع لأس معين باستخدام الرمز **؟


>>> 2**3
8

يمكننا استخدام دالة الاسس pow لتحقيق نفس الهدف

مثلا


>>> pow(2,3)
8

نفس المنطق ينطبق مع دالة المقياس
هي دالة تقوم باعادة الرقم الداخل لها موجبا سواء كان سالبا او موجبا

مثل


>>> abs(-3)
3
>>> abs(4)
4

العملية سهلة حتى هذه اللحظة
لا تقلق بسبب عدم معرفتك الدوال التي توفرها بايثون فان هذا امر سهل وفي اسواء الظروف فهو تراكمي فلا تقلق واستمر

هناك دالة اخرى تدعى floor
ولكن كي نتحدث عنها نحتاج لدرس اخر يدعى module in Python
او الوحدات في بايثون
فالى اللقاء



هناك تعليقان (2):