You are on page 1of 5

‫ما هي ‪ Function‬؟‬

‫الدوال أو الوظائف ( ‪ )functions‬عبارة عن مجموعة من التعليمات البرمجية‬


‫المنظمة والقابلة إلعادة االستخدام التي يتم استخدامها لتنفيذ إجراء واحد ذي‬
‫صلة‪.‬‬
‫تمنحك ‪ Python‬العديد من الدوال الـ ‪ built in‬مثل () ‪ print‬و () ‪ len‬وما‬
‫إلى ذلك‪ .‬لكن ماذا لو تريد إنشاء دالة بنفسك لعمل مهمة معينة ؟‬
‫يمكنك إنشاء دوال خاصة ‪ ،‬تسمى ‪ defined functions‬وهى الدوال التي يتم‬
‫إنشائها من قبل المستخدم‪.‬‬

‫فيما يلي بعض القواعد البسيطة إلنشاء دالة في ‪: Python‬‬

‫‪ .1‬تبدأ الدالة بالكلمة األساسية ‪ def‬التي تعبر عن اختصار ( ‪)define‬‬


‫‪ .2‬متبوعة باسم الدالة لتعريف الوظيفة بشكل فريد‪.‬‬
‫‪ .3‬ثم قوسين مستديرين () لنمرر القيم ( ‪ parameters‬أو ‪ )arguments‬إلى‬
‫الدالة من خاللها‪.‬‬
‫‪ 4‬نقطتان (‪ ):‬لتحديد نهاية رأس الدالة‬
‫‪ 5‬ثم البدأ بكتابة العبارات البرمجية ( ‪ )statements‬التي تشكل جسم الوظيفة‪ .‬يجب‬
‫أن تحتوي العبارات على نفس مستوى المسافة البادئة ( تكون مساويه الربع مسافات )‬
‫مثال للتوضيح ‪:‬‬

‫‪def greet():‬‬
‫)'!‪print('Hello World‬‬

‫إذا قمت بتشغيل الكود السابق ‪ ،‬لن تظهر لك اى مخرجات بسبب عدم إستدعاء الدالة ‪،‬‬
‫لذلك عليك إستدعاء الدالة لتشغيلها‪.‬‬
: Calling a Function ‫إستدعاء الدالة‬

parameters ‫ استخدم اسم الدالة متبوعة بأقواس () بداخلها قيم لـ‬، ‫الستدعاء دالة‬
:‫ كالتالي‬، ‫إن وجدت‬

def greet():
print('Hello World!')

# call the function


greet()

Parameters/
Arguments
arguments or Parameters ‫ ك‬. ‫يمكن تمرير المعلومات إلى الداله‬
‫ يمكنك إضافة العديد من الـ‬.)( .‫ داخل األقواس‬، ‫ بعد اسم الدالة‬parameters ‫يتم وضع الـ‬
:‫ فقط افصل بينها بفاصلة كالتالي‬، ‫ كما تريد‬parameters

def printMyName(firstName, secondName):


print("My first name is: " + firstName + " &
second name is: " + secondName)

printMyName("Hamed", "Esam")
Example: Function to Add Two Numbers

function with two arguments


def add_numbers(num1, num2):
sum = num1 + num2
print("Sum: ", sum)

# function call with two values


add_numbers(5, 4

Output

Sum: 9

‫ للكلمات الرئيسية التي سيتم تمريرها إلى دالتك‬arguments ‫إذا كنت ال تعرف عدد الـ‬
‫ في تعريف‬parameter ‫ فأضف نجمتين ** قبل اسم الـ‬،
.‫الدالة‬
:‫ كالتالي‬، arguments ‫سا للـ‬ ً ‫بهذه الطريقة ستتلقى الدالة قامو‬

def printFullName(**full_name):
print("My Full Name is " + full_name['f_name']
+ " " + full_name['s_name'])

printFullName(f_name = "Ahmed", s_name = "Mohamed")


Argument

...dictionary ‫ أو‬list ‫ أو‬set )‫يمكنك إرسال أي نوع من أنواع البيانات إلى الدالة‬
:‫ كالتالي‬.‫ وسيتم التعامل معها كنوع البيانات نفسه داخل الدالة‬، )‫إلخ‬

Example
def my_function(food):
for x in food:
print(x)

fruits = ["apple", "banana", "cherry"]

my_function(fruits)

You can send any data types of argument to a function


(string, number, list, dictionary etc.), and it will be
treated as the same data type inside the function.

E.g. if you send a List as an argument, it will still be a


List when it reaches the function

You might also like