(Python) الوظائف : الجزء الأول
العالم العربي :: الكمبيوتر والجوالات وتطويرالمواقع والمنتديات :: الكمبيوتر والأنترنت :: التطوير ولغات البرمجة
صفحة 1 من اصل 1 • شاطر
(Python) الوظائف : الجزء الأول
السلام عليكم ورحمة الله وبركاته
إن شاء الله تكونوا في تمام الصحة والعافية
لتنظيم كود برنامج يمكننا جمع سلسلة التعليمات في شكل وضائف أو كلاسات . ثم يمكننا أيضا تنظيم هذه المجموعات في عديد من الملفات أي موديلات ، وفي مختلف المسارات لتكوين package .
في هذا الدرس حنبدأ في شرح "الوضائف"
وسيكون الشرح مقسم على الأجزاء التالية :
*)سياق التنفيذ والتعليمة global
*) التعليمة return
*)وظيفة البرامترات
*) التعليمة lambda
*)تصاميم الوظائف
نقوم بكتابة وظيفة مهمتها نعطيها كلمة ومكان تلك الكلمة في الجملة وعند تنفيذها تقوم بعرض الجملة كاملة على الشاشة :
كود:
تعريف الوظيفة في البايثون يبدأ بالكلمة def يتبعها إسم الوظيفة مثل في المثال السابق إسمها function
ثم نجد قوسان ()تحتوي على البرامترات
وفي الأخير لدينا العلامة : التي تحد بداية كود الوظيفة .
فالوظيفة هي عبارة عن بلوك من الأسطر لديهم إسم .
ويمكن تنفيذ هذه الوظيفة من خلال إسمها مثل المتغيرات تماما .
كود الوظيفة هو الذي يحدد سياق تنفيذها الخاص .
سياق التنفيذ والتعليمة global
عندما تعرف المتغيرات في الكود يقوم مترجم البايثون بوضعهم في إحدى القاموسين التاليين :
القاموس الأول : يحتوي على مجموعة المتغيرات الشاملة
والتي يمكن الوصول إليها عن طريق الدالة ()globals
القاموس الثاني : يحتوي على مجموعة المتغيرات التي يمكن الوصول إليها في لحظة معينة وحسب السياق بالدالة ()locals
عندما نقوم بإستدعاء متغير يتم البحث عن سياقه هل هو محلي (local) أم شامل (global) .
عند تعريف المتغير يتم وضعه :
في السياق المحلي إذا تم تعريفه داخل بلوك (حلقة ، أو وظيفة ...إلخ)
في السياق الشامل إذا تم تعريفه خارج أي بلوك .
وأيضا من المستحيل تعيين المتغيرات الشاملة مباشرة داخل البلوك .
كود PHP:
للخروج من هذا الحصر يفضل أن نستعمل التعليمة globalالتي تسمح بتحديد المتغير على أنه متغير شامل .
إستعمال التعليمة global
كود PHP:
التعليمة return
لافرق بين الوضائف والإجرائات في البايثون بعكس بعض اللغات الأخرى .
الإجرائات في البايثون هي عبارة عن وظائف لاترجع نتيجة واضحة مثل لغة C.
عندما ترجع الوظيفة نتيجة واضحة نستعمل التعليمة return
كود PHP:
يمكن إرجاع العديد من النتائج المفصولة بفاصل وفي هاته الحالة يقوم المترجع بإرجاع هذه النتائج في صف tuple
كود PHP:
يتبع بإذن الله
في أمان الله
إن شاء الله تكونوا في تمام الصحة والعافية
لتنظيم كود برنامج يمكننا جمع سلسلة التعليمات في شكل وضائف أو كلاسات . ثم يمكننا أيضا تنظيم هذه المجموعات في عديد من الملفات أي موديلات ، وفي مختلف المسارات لتكوين package .
في هذا الدرس حنبدأ في شرح "الوضائف"
وسيكون الشرح مقسم على الأجزاء التالية :
*)سياق التنفيذ والتعليمة global
*) التعليمة return
*)وظيفة البرامترات
*) التعليمة lambda
*)تصاميم الوظائف
نقوم بكتابة وظيفة مهمتها نعطيها كلمة ومكان تلك الكلمة في الجملة وعند تنفيذها تقوم بعرض الجملة كاملة على الشاشة :
كود:
>>> def function(word):
print "Salam alikom %s" %word
>>> function('zero-cool')
Salam alikom zero-cool
print "Salam alikom %s" %word
>>> function('zero-cool')
Salam alikom zero-cool
تعريف الوظيفة في البايثون يبدأ بالكلمة def يتبعها إسم الوظيفة مثل في المثال السابق إسمها function
ثم نجد قوسان ()تحتوي على البرامترات
وفي الأخير لدينا العلامة : التي تحد بداية كود الوظيفة .
فالوظيفة هي عبارة عن بلوك من الأسطر لديهم إسم .
ويمكن تنفيذ هذه الوظيفة من خلال إسمها مثل المتغيرات تماما .
كود الوظيفة هو الذي يحدد سياق تنفيذها الخاص .
سياق التنفيذ والتعليمة global
عندما تعرف المتغيرات في الكود يقوم مترجم البايثون بوضعهم في إحدى القاموسين التاليين :
القاموس الأول : يحتوي على مجموعة المتغيرات الشاملة
والتي يمكن الوصول إليها عن طريق الدالة ()globals
القاموس الثاني : يحتوي على مجموعة المتغيرات التي يمكن الوصول إليها في لحظة معينة وحسب السياق بالدالة ()locals
عندما نقوم بإستدعاء متغير يتم البحث عن سياقه هل هو محلي (local) أم شامل (global) .
عند تعريف المتغير يتم وضعه :
في السياق المحلي إذا تم تعريفه داخل بلوك (حلقة ، أو وظيفة ...إلخ)
في السياق الشامل إذا تم تعريفه خارج أي بلوك .
وأيضا من المستحيل تعيين المتغيرات الشاملة مباشرة داخل البلوك .
كود PHP:
- الكود:
>>> word = 'zero'
>>> def function(word):
print(locals())
print "Salam alikom %s" %word
>>> function('cool')
{'word': 'cool'}
Salam alikom cool
>>> print(globals())
{'function': <function function at 0x029FFEB0>, 'word': 'zero', '__builtins__': <module '__builtin__' (built-in)>, '__package__': None, '__name__': '__main__', '__doc__': None}
إستعمال التعليمة global
كود PHP:
- الكود:
>>> name = 'zero cool'
>>>
>>> def func(first,last):
global name
name = "%s %s" %(first,last)
print(locals())
print(name)
>>> func('foulan','foulana')
{'last': 'foulana', 'first': 'foulan'}
foulan foulana
>>> print name
foulan foulana
لافرق بين الوضائف والإجرائات في البايثون بعكس بعض اللغات الأخرى .
الإجرائات في البايثون هي عبارة عن وظائف لاترجع نتيجة واضحة مثل لغة C.
عندما ترجع الوظيفة نتيجة واضحة نستعمل التعليمة return
كود PHP:
- الكود:
>>> def sum(num):
return num + 5
>>> sum(6)
11
كود PHP:
- الكود:
>>> def nums():
return 5, 10, 15
>>> nums()
(5, 10, 15)
يتبع بإذن الله
في أمان الله
مواضيع مماثلة
» مكرونة محشية الجزء الأول
» ومضات من بلاط ساقطة الجزء الأول
» 02/08/2012 منتدى الصحافة الجزء الأول
» مسلسل باب الحارة الجزء الأول كامل
» سجن منوبة النسائي الجزء الأول : 16-01-2012
» ومضات من بلاط ساقطة الجزء الأول
» 02/08/2012 منتدى الصحافة الجزء الأول
» مسلسل باب الحارة الجزء الأول كامل
» سجن منوبة النسائي الجزء الأول : 16-01-2012
العالم العربي :: الكمبيوتر والجوالات وتطويرالمواقع والمنتديات :: الكمبيوتر والأنترنت :: التطوير ولغات البرمجة
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى