Functions in Python
- الدوال في بايثون: دليل شامل للمبتدئين
الدوال هي لبنات البناء الأساسية لأي برنامج، وبايثون ليست استثناءً. تسمح لنا بتنظيم التعليمات البرمجية، وإعادة استخدامها، وجعلها أكثر قابلية للقراءة والصيانة. في هذا المقال، سنستكشف مفهوم الدوال في بايثون بتفصيل، مع التركيز على الجوانب العملية التي ستساعدك على كتابة برامج فعالة.
ما هي الدالة؟
ببساطة، الدالة هي مجموعة من التعليمات البرمجية التي تنفذ مهمة محددة. يمكنك استدعاء هذه الدالة عدة مرات في برنامجك دون الحاجة إلى إعادة كتابة التعليمات البرمجية نفسها في كل مرة. تخيل أنك تريد حساب مساحة مستطيل عدة مرات في برنامجك. بدلاً من كتابة صيغة حساب المساحة في كل مرة، يمكنك تعريف دالة تقوم بذلك، ثم استدعاء هذه الدالة كلما احتجت إليها.
تعريف الدالة
في بايثون، يتم تعريف الدالة باستخدام الكلمة المفتاحية def، متبوعة باسم الدالة، ثم قائمة بالمعاملات (parameters ) داخل أقواس، وأخيراً نقطتين رأسيتين (:). يجب أن تكون التعليمات البرمجية التي تشكل الدالة مسافة بادئة (indentation ).
Admin (talk)python def اسم_الدالة(المعامل1, المعامل2, ...):
# تعليمات برمجية للدالة return قيمة_الارجاع
- def: الكلمة المفتاحية التي تشير إلى بداية تعريف الدالة.
- اسم_الدالة: اسم فريد للدالة، يجب أن يتبع قواعد تسمية المتغيرات في بايثون.
- المعاملات: قيم تمرر إلى الدالة لاستخدامها في العمليات الحسابية أو المنطقية. يمكن أن تكون الدالة بدون معاملات أيضاً.
- return: الكلمة المفتاحية التي تحدد القيمة التي ترجعها الدالة. إذا لم تستخدم return، فإن الدالة ترجع None بشكل افتراضي.
مثال:
Admin (talk)python def جمع_عددين(العدد_الاول, العدد_الثاني):
"""هذه الدالة تجمع عددين وتعيد الناتج.""" # Docstring المجموع = العدد_الاول + العدد_الثاني return المجموع
في هذا المثال:
- اسم الدالة هو جمع_عددين.
- المعاملات هي العدد_الاول و العدد_الثاني.
- الدالة تحسب مجموع العددين وتعيد الناتج باستخدام return.
- السطر الذي يبدأ بـ """ هو docstring، وهو نص توضيحي يصف وظيفة الدالة.
استدعاء الدالة
بعد تعريف الدالة، يمكنك استدعاؤها عن طريق كتابة اسم الدالة متبوعاً بأقواس تحتوي على القيم التي تريد تمريرها كمعاملات (arguments ).
مثال:
Admin (talk)python نتيجة_الجمع = جمع_عددين(5, 3) print(نتيجة_الجمع) # سيطبع: 8 Admin (talk)
أنواع المعاملات
هناك عدة أنواع من المعاملات التي يمكن استخدامها في الدوال:
- المعاملات الموضعية (Positional Arguments): يتم تمريرها إلى الدالة بالترتيب الذي تم تعريفها به.
- المعاملات المسماة (Keyword Arguments): يتم تمريرها إلى الدالة باستخدام اسم المعامل والقيمة المرتبطة به. هذا يسمح لك بتمرير المعاملات بترتيب مختلف عن الترتيب الذي تم تعريفها به.
- المعاملات الافتراضية (Default Arguments): لها قيمة افتراضية إذا لم يتم تمرير قيمة لها عند استدعاء الدالة.
- *args و **kwargs: تسمح لك بتمرير عدد غير محدد من المعاملات إلى الدالة. *args تستخدم لتمرير عدد غير محدد من المعاملات الموضعية، و **kwargs تستخدم لتمرير عدد غير محدد من المعاملات المسماة.
الوصف | مثال | | ||||
يتم تمريرها بالترتيب | `الدالة(1, 2)` | | يتم تمريرها باسمها | `الدالة(العدد_الاول=1, العدد_الثاني=2)` | | لها قيمة افتراضية | `def الدالة(العدد_الاول=1):` | | عدد غير محدد من المعاملات الموضعية | `def الدالة(*args):` | | عدد غير محدد من المعاملات المسماة | `def الدالة(**kwargs):` | |
النطاق (Scope)
النطاق يحدد المنطقة التي يمكن فيها الوصول إلى متغير معين. في بايثون، هناك نوعان رئيسيان من النطاق:
- النطاق المحلي (Local Scope): المتغيرات المعرفة داخل دالة لها نطاق محلي، مما يعني أنه لا يمكن الوصول إليها من خارج الدالة.
- النطاق العام (Global Scope): المتغيرات المعرفة خارج أي دالة لها نطاق عام، مما يعني أنه يمكن الوصول إليها من أي مكان في البرنامج.
الدوال و البرمجة الكائنية
تعتبر الدوال جزءًا أساسيًا من البرمجة الكائنية (Object-Oriented Programming ) في بايثون، حيث تُستخدم داخل الصفوف (Classes ) لتعريف الطرق (Methods ).
أهمية الدوال
- إعادة الاستخدام: تجنب تكرار التعليمات البرمجية.
- التبسيط: تقسيم المشكلة الكبيرة إلى مهام أصغر وأكثر قابلية للإدارة.
- القراءة: جعل التعليمات البرمجية أكثر وضوحًا وسهولة في الفهم.
- الصيانة: تسهيل تعديل وتصحيح التعليمات البرمجية.
أمثلة عملية
- دالة لحساب مضروب عدد:
Admin (talk)python def مضروب(العدد):
if العدد == 0: return 1 else: return العدد * مضروب(العدد - 1) # الاستدعاء الذاتي (Recursion)
- دالة للتحقق من عدد أولي:
Admin (talk)python def هل_أولي(العدد):
if العدد <= 1: return False for i in range(2, int(العدد**0.5) + 1): if العدد % i == 0: return False return True
تطبيقات الدوال في التداول
يمكن استخدام الدوال في بايثون لأتمتة العديد من المهام في مجال تداول الخيارات الثنائية و الأسواق المالية، مثل:
- تحليل البيانات المالية: كتابة دوال لحساب المؤشرات الفنية مثل المتوسط المتحرك، مؤشر القوة النسبية، مؤشر الماكد، بولينجر باندز.
- تنفيذ استراتيجيات التداول: كتابة دوال لتنفيذ أوامر الشراء والبيع بناءً على شروط معينة.
- إدارة المخاطر: كتابة دوال لحساب حجم الصفقة المناسب بناءً على مستوى المخاطر المقبول.
- التحليل الكمي: كتابة دوال لنمذجة وتقييم الاستراتيجيات التجارية.
- التحليل الأساسي: كتابة دوال لاستخراج البيانات من التقارير المالية وتحليلها.
- استراتيجيات التداول ذات الصلة:**
- استراتيجية المتوسطات المتحركة
- استراتيجية الاختراق
- استراتيجية الارتداد
- استراتيجية التداول المتأرجح
- استراتيجية سكالبينج
- استراتيجية مارتينجال
- استراتيجية فيبوناتشي
- استراتيجية ايليوت ويف
- استراتيجية التداول الخوارزمي
- استراتيجية التداول اليومي
- استراتيجية تداول الأخبار
- استراتيجية تداول الاتجاه
- استراتيجية تداول النطاق
- استراتيجية التحوط
- استراتيجية المضاربة
- التحليل الفني:**
- تحليل حجم التداول:**
الخلاصة
الدوال هي أداة قوية في بايثون تساعدك على كتابة برامج منظمة وفعالة. فهم كيفية تعريف واستدعاء الدوال، وأنواع المعاملات، والنطاق، سيساعدك على تطوير مهاراتك في البرمجة بشكل كبير. تذكر أن الممارسة هي المفتاح لإتقان أي لغة برمجة، لذا حاول كتابة العديد من الدوال لحل مشاكل مختلفة.
بايثون، المتغيرات، الصفوف، البرمجة الكائنية، الاستدعاء الذاتي (Recursion)، النطاق المحلي، النطاق العام، المتوسط المتحرك، مؤشر القوة النسبية، مؤشر الماكد، بولينجر باندز، تداول الخيارات الثنائية، الأسواق المالية، تحليل البيانات المالية، إدارة المخاطر. التحليل الكمي التحليل الأساسي الشموع اليابانية خطوط الاتجاه مستويات الدعم والمقاومة
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين