الفصل 7

الفصل 7

7.1 أساسيات الوَحدات

1.
b. تحتوي الشِفرة على عشر تعليمات def ، كل منها تُعرّف دالّة.
2.
a. تتكون العديد من الوَحدات من تعريفات الدوال فقط. يُقصد من هذه الدوال أن تُستدعى في وَحدات أخرى.
3.
c. area.cube(5) هي 6 * 5**2، أي 6 * 25، وهي 150 .
4.
a. عند استيراد وَحدة من ملف آخر، يتم حذف اللاحقة *.py*.
5.
b. يجب استدعاء دالّة circle باستخدام المُتغيِّر area الذي يشير إلى الوَحدة.
6.
b. إضافة الدالّة إلى الوَحدة area يجعل الدالّة أسهل في إعادة الاستخدام في برامج أخرى.

7.2 استيراد الأسماء

1.
a. تستورد هذه التعليمة دالّة sqrt المُعرَّفة في وَحدة math.
2.
b. يتم تعريف مُتغيِّر لكل دالّة مستوردة: sin و cos و tan.
3.
b. يحدث خطأ في الاسم عندما لا يتم العثور على اسم مُتغيِّر، وقد يكون ذلك بسبب تعليمة استيراد مفقودة.
4.
b. تستبدل هذه التعليمة دالّة circle التي تم استيرادها سابقًا، على الرغم من أن circle() و area.circle() لهما مُعامِلات مختلفة.
5.
a. إسناد المُتغيِّر area يستبدل الوَحدة المستوردة سابقًا بالعدد الصحيح 51 . لم يعد بالإمكان استخدام المُتغيِّر لاستدعاء الدوال في الوَحدة area.
6.
b. يتطلب أحدث تعريف للدالّة hello() وسيطًا واحدًا، لذا ستؤدي هذه السطر إلى خطأ.

7.3 الشِفرة ذات المستوى الأعلى

1.
b. كلما تم استيراد هذه الوَحدة، ستُخرج بايثون "Defining sphere function" كأثر جانبي.
2.
a. على الرغم من عدم طباعة أي شيء، فإن استدعاء دالّة sphere عشرة ملايين مرة يسبب تأخيرًا في البرنامج الرئيسي.
3.
a. جميع الشِفرة موجودة في المستوى الأعلى، ولم يتم تعريف أي دوال. استيراد هذه الوَحدة سيُشغّل جميع الشِفرة كأثر جانبي.
4.
c. المُتغيِّر __name__ هو اسم الوَحدة، ما لم يتم تشغيل الوَحدة كبرنامج رئيسي. في هذه الحالة، يكون __name__ هو "__main__" .
5.
a. بما أن *test.py* تم استيراده، فإن قيمة __name__ هي "test" .
6.
c. يوجد هذا السطر في العديد من وَحدات بايثون للتحقق مما إذا كانت الوَحدة قد تم تشغيلها كبرنامج رئيسي.

7.4 دالّة المساعدة

1.
b. الأرقام تحتوي على 0 أحمر و 0 أخضر، لذا يجب أن يكون اللون درجة من الأزرق. الأزرق الداكن (Navy) هو نسخة أغمق من الأزرق القياسي، #0000FF .
2.
c. FF في النظام السداسي عشري هو 255، وهو أقصى كمية من الأحمر أو الأخضر أو الأزرق في اللون.
3.
a. قيم الأحمر والأخضر والأزرق للبرتقالي أعلى من قيم الأحمر والأخضر والأزرق للأخضر.
4.
b. النظام السداسي عشري للأصفر هو #FFFF00 ، مما يعني 255 أحمر + 255 أخضر + 0 أزرق.
5.
c. يجب الوصول إلى كل من دالّة darken والمُتغيِّر BLUE عبر المُتغيِّر colors.
6.
a. أسماء الدوال التي تبدأ بشرطة سفلية مخصصة للاستخدام داخل الوَحدة الحالية فقط.
7.
b. يتم تضمين سلاسل التوثيق فقط في التوثيق. يتم تجاهل جميع التعليقات بواسطة دالّة المساعدة.
8.
a. يتم ترتيب الدوال أبجديًا حسب الاسم لتسهيل البحث عن دالّة.
9.
a. الدوال التي تبدأ بشرطة سفلية مخصصة للاستخدام داخل وَحدة فقط، وليس في وَحدات أخرى.

7.5 البحث عن الوَحدات

1.
a. يشرح هذا المرجع المكتبة القياسية، بما في ذلك الدوال المُضمَّنة، والأنواع، والوَحدات.
2.
b. كما هو موضح في توثيق وَحدة calendar، MONDAY هو 0 و SUNDAY هو 6 .
3.
a. وَحدة tkinter تعني واجهة Tk. Tk هي مجموعة أدوات قياسية لإنشاء النوافذ ومربعات النصوص والأزرار وعناصر واجهة المستخدم الرسومية الأخرى.
4.
c. MoviePy هي وَحدة لتحرير الفيديو، و Pillow هي وَحدة لمعالجة الصور.
5.
a. وفقًا لقسم "الميزات" في التوثيق، Arrow هو "بديل كامل التنفيذ وجاهز للاستخدام لـ datetime."
6.
a. تحول هذه الدالّة رمز اللون إلى اسم لون. مثال: hex_to_name("#daa520") تُرجع "goldenrod" .