دالات هي كتل من التعليمات البرمجية التي يمكن إعادة استخدامها ببساطة عن طريق استدعاء الدالة. ويتيح ذلك إعادة استخدام الشفرة البسيطة والأنيقة دون إعادة كتابة أجزاء من التعليمات البرمجية بشكل صريح. هذا يجعل التعليمات البرمجية أكثر قابلية للقراءة ، مما يجعل تصحيح الأخطاء أسهل ، ويحد من أخطاء الكتابة.
يتم إنشاء دالات في Python باستخدام الكلمة المفتاحية `def` ، متبوعةً باسم دالة ومعلمات دالة داخل أقواس.
وظيفة دوما بإرجاع قيمة، و `return` يستخدم الكلمة بواسطة الدالة لإرجاع قيمة، إذا كنت لا ترغب في عودة أي قيمة، القيمة الافتراضية `None` سوف إرجاعها.
يتم استخدام اسم الدالة لاستدعاء الدالة ، تمرير المعلمات المطلوبة داخل الأقواس.
print(multiply('a', 5)) # 'aaaaa' printed to the console
print(multiply('a', 'b')) # TypeError: Python can't multiply two strings
`
* تتضمن كتلة التعليمة البرمجية التي ستقوم الدالة بتشغيل كافة عبارات بادئة داخل الدالة.
`def myFunc():
print('this will print')
print('so will this')
x = 7
# the assignment of x is not a part of the function since it is not indented
`
* المتغيرات المحددة ضمن وظيفة موجودة فقط داخل نطاق تلك الوظيفة.
`def double(num):
x = num * 2
return x
print(x) # error - x is not defined
print(double(4)) # prints 8
`
يفسر -Python كتلة الدالة فقط عندما يتم استدعاء الدالة وليس عندما يتم تعريف الدالة.حتى إذا كانت كتلة تعريف الدالة تحتوي على نوع من الخطأ ، فسيشير تفسر python إلى ذلك فقط عند استدعاء الدالة.
### معلومات اكثر:
* [Python 3 Docs: تحديد الوظائف](https://docs.python.org/3/tutorial/controlflow.html#defining-functions)