تعلم لغة البايثون – الدرس التاسع الدوال في البايثون python function

ما هي الوظائف؟

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

كيف تكتب وظائف في بيثون؟

كما رأينا في البرامج التعليمية السابقة ، تستخدم Python الكتل.

الكتلة هي منطقة من التعليمات البرمجية المكتوبة بتنسيق

مثال

block_head:
    1st block line
    2nd block line
    ...

سنحصل على النتيجة التالية عند التشغيل

  File "<stdin>", line 1
    block_head:
              ^
SyntaxError: invalid syntax

عندما يكون خط الكتلة هو رمز Python أكثر (حتى كتلة أخرى) ، ويكون رأس الكتلة بالتنسيق التالي: block_keyword block_name (argument1 ، argument2 ، …) الكلمات الرئيسية التي تعرفها بالفعل هي “if” ، “for” ، و “في حين”.

يتم تعريف الوظائف في python باستخدام الكلمة الأساسية block “def” ، متبوعة باسم الوظيفة كاسم الكتلة. فمثلا

def my_function():
    print("Hello From My Function!")

قد ترجع الدوال قيمة للمتصل ، باستخدام الكلمة الأساسية “رجوع”. فمثلا:

def sum_two_numbers(a, b):
    return a + b

كيف يمكنك استدعاء الوظائف في Python؟

ما عليك سوى كتابة اسم الوظيفة متبوعًا بـ () ، ووضع أي وسيطات مطلوبة بين قوسين. على سبيل المثال ، لنستدعي الوظائف المكتوبة أعلاه (في المثال السابق):

# تحديد وظائفنا الثلاث
def my_function():
    print("Hello From My Function!")

def my_function_with_args(username, greeting):
    print("Hello, %s , From My Function!, I wish you %s"%(username, greeting))

def sum_two_numbers(a, b):
    return a + b

# طباعة (تحية بسيطة)
my_function()

#prints - "Hello, John Doe, From My Function!, I wish you a great year!"
my_function_with_args("John Doe", "a great year!")

# بعد هذا السطر x ستحمل القيمة 3!
x = sum_two_numbers(1,2)

سنحصل على النتيجة التالية عند التشغيل

Hello From My Function!
Hello, John Doe , From My Function!, I wish you a great year!

تمرين

ستستخدم في هذا التمرين وظيفة حالية ، وأثناء إضافة وظيفتك لإنشاء برنامج كامل الوظائف.

أضف وظيفة باسم list_benefits () تُرجع قائمة السلاسل التالية: “رمز منظم أكثر” ، “رمز أكثر قابلية للقراءة” ، “إعادة استخدام رمز أسهل” ، “السماح للمبرمجين بمشاركة التعليمات البرمجية وربطها معًا”

قم بإضافة دالة باسم build_sentence (info) والتي تتلقى وسيطة واحدة تحتوي على سلسلة وترجع جملة تبدأ بسلسلة معينة وتنتهي بسلسلة “فائدة للوظائف!”

تشغيل ورؤية جميع الوظائف تعمل معًا!

# قم بتعديل هذه الوظيفة لإرجاع قائمة السلاسل كما هو محدد أعلاه
def list_benefits():
    pass

# تعديل هذه الوظيفة لتتوافق مع كل فائدة - "هي فائدة الوظائف!"
def build_sentence(benefit):
    pass

def name_the_benefits_of_functions():
    list_of_benefits = list_benefits()
    for benefit in list_of_benefits:
        print(build_sentence(benefit))

name_the_benefits_of_functions()

الحل

# قم بتعديل هذه الوظيفة لإرجاع قائمة السلاسل كما هو محدد أعلاه
def list_benefits():
    return "More organized code", "More readable code", "Easier code reuse", "Allowing programmers to share and connect code together"

# تعديل هذه الوظيفة لتتوافق مع كل فائدة - "هي فائدة الوظائف!"
def build_sentence(benefit):
    return "%s is a benefit of functions!" % benefit


def name_the_benefits_of_functions():
    list_of_benefits = list_benefits()
    for benefit in list_of_benefits:
        print(build_sentence(benefit))

name_the_benefits_of_functions()

سنحصل على النتيجة التالية عند التشغيل

<script.py> output:
    More organized code is a benefit of functions!
    More readable code is a benefit of functions!
    Easier code reuse is a benefit of functions!
    Allowing programmers to share and connect code together is a benefit of functions!

الدرس العاشر






Leave a Reply