"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > وسيطات الموضع مقابل الكلمات الرئيسية: متى يمكنك استخدام كليهما في بايثون؟

وسيطات الموضع مقابل الكلمات الرئيسية: متى يمكنك استخدام كليهما في بايثون؟

تم النشر بتاريخ 2024-11-20
تصفح:823

Positional vs Keyword Arguments: When Can You Use Both in Python?

الوسيطة الموضعية مقابل وسيطة الكلمة الرئيسية: توضيح الارتباك

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

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

الوسيطات الموضعية:

  • يتم تحديد الوسيطات الموضعية دون استخدام علامة يساوي.
  • تعتمد على الترتيب الذي تم تقديمها به.
  • يجب أن يتطابق تعريف الوظيفة مع ترتيب هذه العناصر الوسائط.

وسيطات الكلمات الرئيسية:

  • يتم تعريف وسيطات الكلمات الرئيسية بأسمائها المرتبطة.
  • وتسبقها متساوية علامة.
  • ترتيب هذه الوسائط ليس ضروريًا، طالما أن أزواج الاسم والقيمة صحيحة.

إلى لتوضيح هذا التمييز، فكر في دالة بايثون التالية:

def rectangleArea(width, height):
    return width * height
في التعريف، يعد كل من العرض والارتفاع وسيطتين موضعيتين. ومع ذلك، يمكننا أيضًا استدعاء هذه الوظيفة باستخدام وسيطات الكلمات الرئيسية، كما هو موضح أدناه:

rectangleArea(width=1, height=2)
rectangleArea(width=1, height=2)

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

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3