اهلا ومرحبا بكم في مدونه : Cyber1101 انظم للمجتمع

def python

 





مفهوم الدوال في python


الدوال في Python هي مجموعة من التعليمات التي تنفذ مهمة محددة وتعود بقيمة معينة إلى البرنامج الرئيسي. يمكن استخدام الدوال لتنظيم الشفرة وجعلها أكثر فائدة وإعادة استخداماً.

تبدأ تعريف الدالة باستخدام الكلمة المحجوزة "def"، ثم يتم كتابة اسم الدالة، وبعدها يأتي قائمة المعاملات المستقبلة. يمكن تعريف دالة بمعاملات مختلفة أو بدون معاملات. بعد ذلك، يأتي جسم الدالة الذي يتضمن الأوامر التي يجب تنفيذها، ويتم إرجاع القيمة بإستخدام الأمر return.

فيما يلي مثال على تعريف دالة في Python:

def add_numbers(x, y):
    	result = x + y
    	return result



هذه الدالة تقوم بإضافة عددين (x و y) وتعيد نتيجة الجمع. يمكن استدعاء الدالة في أي مكان آخر في البرنامج باستخدام اسم الدالة وإرسال المعلمات المطلوبة.

def في python 


"def" في Python هي كلمة مفتاحية تستخدم لتعريف وإنشاء دالة جديدة. يمكن استخدام الدوال في Python لتجميع كود معين في وحدة منفصلة وإعادة استخدامها في أماكن عديدة في البرنامج.

على سبيل المثال، يمكن تعريف دالة بسيطة في Python باستخدام الكود التالي:

def my_function():	
	      print("Hello World!")



هذا يقوم بتعريف دالة اسمها "myfunction" والتي تقوم بطباعة "Hello World!" عند استدعائها. يمكن استدعاء هذه الدالة في أي مكان داخل البرنامج باستخدام اسمها (أي "myfunction()").

تعريف دالة جديدة في python


لتعريف دالة جديدة في لغة Python، يمكنك استخدام الكلمة المحجوزة "def" متبوعة بإسم الدالة وقائمة المدخلات المطلوبة بين قوسين. ثم، يتم كتابة جسم الدالة بين علامتي التقويم المتعرجة الفتح "{" والغلق "}".

على سبيل المثال، إذا أردت تعريف دالة باسم "sumtwonumbers" لجمع رقمين، يمكنك كتابة الكود التالي:

 def sum_two_numbers(x, y):
		   result = x + y



يمكنك استدعاء هذه الدالة باستخدام اسمها وتمرير رقمين كمدخلات وذلك بكتابة الأمر التالي:

print(sum_two_numbers(3, 5))



سيعيد البرنامج القيمة 8.

وضع قيم افتراضيه للباراميترات 


يمكنك وضع قيم افتراضية للباراميترات في Python عن طريق تحديد القيمة المفترضة في التعريف الأساسي للدالة. على سبيل المثال، إذا كان لديك دالة تقوم بجمع رقمين وتظهر النتيجة، يمكنك تحديد القيم المفترضة لهذين الرقمين عن طريق:

def add_numbers(a=0, b=0):
	       result = a + b
           print(result)



في هذا المثال، تم تحديد القيم المفترضة للمتغيرات "a" و "b" على 0. وبالتالي، إذا لم يتم تمرير أي متغيرات إلى الدالة، فسيتم استخدام القيم المفترضة (0) للقيام بالعملية الحسابية.

لتجربة هذا المثال، يمكنك استدعاء الدالة بشكل التالي:

add_numbers() # سيظهر النتيجة 0
add_numbers(5) # سيظهر النتيجة 5
add_numbers(2, 3) # سيظهر النتيجة 5


تحديد أسماء الباراميترات التي سيتم إعطاءها قيم 



يمكن تحديد أسماء الباراميترات وقيمها في Python عن طريق تعريف دالة وتحديد الباراميترات الخاصة بها في قائمة بين قوسين مربعين، ومن ثم تعيين قيم افتراضية للباراميترات إذا لزم الأمر.

في المثال التالي، سنعرف دالة باسم print_info

ونحدد ثلاثة باراميترات: 

name و age و occupation . يتم تعيين قيم افتراضية لجميع الباراميترات باستثناء name :


def print_info (name , age=30, occupation='Developer'):
           print(f"My name is {name}, I'm {age} years old, and I work as a {occupation}.")



يمكن استدعاء هذه الدالة بأي من الطرق التالية لتحديد الباراميترات:

-

print_info('John', 25, 'Engineer')


-

print_info(age=25, name='John', occupation='Engineer')


-

print_info('John')


-

print_info(name='John', occupation='Engineer')



يمكن تحديد قيمة الباراميترات الافتراضية في الدالة عن طريق تحديدها كجزء من تعريف الدالة، كما هو موضح في المثال التالي:

def print_info(name, age=30, occupation='Developer'):
		   print(f"My name is {name}, I'm {age} years old, and I work as a {occupation}.")



في هذه الحالة، يتم تعيين القيم الافتراضية ل age و occupation إلى 30 و 'Developer' على التوالي.

بناء دوال تقبل عدد غير محدد من القيم عند إستدعائها في python

يمكن استخدام الـ *args لإرسال عدد غير محدد من القيم إلى دالة في Python، حيث يتم تخزين هذه القيم في tuple ويمكن استخدامها داخل الدالة.


فيما يلي مثال عن دالة تقبل عدد غير محدد من الأرقام وتقوم بجمعها:

python
	   def sum_numbers(*args):
           total = 0
           for num in args:
           	  total += num
              return total


يمكن استدعاء هذه الدالة بإرسال عدد غير محدد من الأرقام:

print(sum_numbers(1, 2, 3)
	   # النتيجة: 6
       print(sum_numbers(3, 4, 5, 6)) # النتيجة: 18
       print(sum_numbers(10))
       # النتيجة: 10
       print(sum_numbers())
       # النتيجة: 0



التفريق بين المتغيرات المعرفة بداخل الدوال و خارجها في بايثون

في Python، يتم تحديد مدى المتغيرات بناءً على مكان تعريفها داخل أو خارج الدالة، حيث تكون المتغيرات المعرفة داخل الدالة محلية لها فقط، ولا يمكن الوصول إليها من خارج الدالة.

على سبيل المثال، في الكود التالي، المتغير x هو محلي للدالة my_func() ولا يمكن الوصول إليه من خارجها:


python
       def my_func():
           x = 10
           print(x)
       my_func()
           print(x) # يؤدي إلى NameError: name 'x' is not defined
       



بينما إذا تم تعريف المتغير خارج الدالة، فإنه يصبح متاحًا في جميع الأماكن، بما في ذلك داخل الدالة:


           x = 5 # تعريف المتغير خارج الدالة
           def my_func():
               print(x) # يمكن الوصول إلى المتغير داخل الدالة
           my_func()
               print(x) # يمكن الوصول إلى المتغير من خارج الدالة أيضًا



من الجيد التفريق بين هذه المتغيرات واستخدامها بشكل صحيح لتجنب الأخطاء الشائعة في البرمجة.



ال local و global في python 


في لغة Python، يشير المصطلح "local" إلى النطاق الذي تم تعريفه داخل دالة أو طريقة معينة، في حين أن "global" يشير إلى النطاق الذي يتم تعريفه خارج دالة أو الطريقة.

بمعنى آخر، المتغيرات التي تم تعريفها داخل نطاق الدالة تعتبر محلية (local) ولا يمكن الوصول إليها من خارج الدالة، بينما المتغيرات التي تم تعريفها في النطاق العام (global) يمكن الوصول إليها من أي مكان في البرنامج.

يمكن استخدام الكلمة المفتاحية global في Python للإشارة إلى المتغيرات العامة، وذلك عندما تحتاج إلى تغيير قيمة متغير عام داخل دالة أو طريقة.

global في python


global في Python تستخدم للإشارة إلى أن المتغير الذي يتم تعريفه داخل نطاق معين يجب أن يتم استخدامه على مستوى البرنامج بأكمله، وليس فقط داخل هذا النطاق. يتم استخدام global لتغيير قيمة المتغير في النطاق العلوي، على سبيل المثال:


x = 10
       def my_function():
       	   global x
           x = 5
           print(x)
       my_function()
           print(x)



في هذا المثال، تم استخدام global للإشارة إلى أن المتغير x يجب أن يتم استخدامه على مستوى البرنامج بأكمله، وليس فقط داخل الدالة my_function . تم تغيير قيمة x داخل الدالة باستخدام global ، وعندما يتم استدعاء الدالة وطباعة قيمة x من خارجها، يتم طباعة القيمة الجديدة المحدثة التي تم تعيينها داخل الدالة.

local في python 

في لغة البرمجة بايثون، local هو كلمة محجوزة (reserved word) تستخدم لتعريف متغير محلي (local variable) داخل نطاق معين، مثل داخل دالة (function).


وبمعنى آخر، المتغير المعرف باستخدام local يكون محدوداً بالنطاق الذي يتم تعريفه فيه، ولا يمكن الوصول إليه من خارج هذا النطاق.


ويمكن استخدام local في الشكل التالي:


def my_function():
		   local_variable = "Hello, World!"
           print(local_variable)



في هذا المثال، قمنا بتعريف دالة تسمى my_function وقمنا بتعريف المتغير local_variable باستخدام local . وبالتالي، يمكننا استخدام هذا المتغير فقط داخل نطاق الدالة my_function .

تعريف الدوال باسلوب lambda في python


تعريف الدوال باستخدام lambda في Python هو طريقة بسيطة ومختصرة لإنشاء دوال مجهولة دون الحاجة إلى تحديدها باسم. يتم استخدامها عادة في الحالات التي يكون من الممكن استخدام دالة واحدة فقط لحل مشكلة محددة.

لتعريف دالة باستخدام lambda في Python، يتم كتابة الكلمة المفتاحية "lambda"، ثم قائمة المعاملات (إذا كانت هناك)، ثم العبارة التي تشير إلى القيمة التي ستُرجع. على سبيل المثال، يمكن تعريف دالة تقوم بضرب رقمين كالتالي:

multiply = lambda x, y: x * y



ويتم استخدام الدالة الناتجة بهذا الشكل:

result = multiply(3, 4)
	   print(result)



سيتم طباعة الرقم 12 في هذه الحالة.

إرسال تعليق

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.