Ali Ahmed55 نشر 22 يونيو أرسل تقرير نشر 22 يونيو السلام عليكم الكود ده class Book: def __init__(self , title , author, pages): self.title = title self.author = author self.pages = pages وده class Book: def __init__(self , title=None , author=None, pages=None): self.title = title self.author = author self.pages = pages ونا هنا بتكلم علي السطر ال def هل فيه فرق بين لو كتابت الخصائص كده من غير كلمه None ؟ 1 اقتباس
0 عبدالباسط ابراهيم نشر 22 يونيو أرسل تقرير نشر 22 يونيو الفرق بين الكودين هو تعيين القيم الافتراضية للمتغيرات في حالة عدم تمرير قيم لها عند إنشاء كائن من الفئة Book حيث في الكود الأول يجب تمرير قيم للمتغيرات title و author و pages و إذا لم يتم تمرير أي قيم، سيؤدي ذلك إلى رفع استثناء TypeError. بينما في الكود الثاني تم استخدام القيم الافتراضية (None) للمتغيرات title و author و pages . و إذا لم يتم تمرير أي قيم عند إنشاء كائن Book، سيتم تعيين القيم None تلقائياً لكل من title و author و pages. لذلك عند استخدام الكود الثاني يجعل الفئة Book أكثر مرونة وأكثر سهولة في استخدامها، لأنه يسمح بإنشاء كائنات بدون الحاجة لتمرير كل القيم المطلوبة . 1 اقتباس
0 Ali Ahmed55 نشر 22 يونيو الكاتب أرسل تقرير نشر 22 يونيو بتاريخ 3 دقائق مضت قال عبدالباسط ابراهيم: الفرق بين الكودين هو تعيين القيم الافتراضية للمتغيرات في حالة عدم تمرير قيم لها عند إنشاء كائن من الفئة Book حيث في الكود الأول يجب تمرير قيم للمتغيرات title و author و pages و إذا لم يتم تمرير أي قيم، سيؤدي ذلك إلى رفع استثناء TypeError. بينما في الكود الثاني تم استخدام القيم الافتراضية (None) للمتغيرات title و author و pages . و إذا لم يتم تمرير أي قيم عند إنشاء كائن Book، سيتم تعيين القيم None تلقائياً لكل من title و author و pages. لذلك عند استخدام الكود الثاني يجعل الفئة Book أكثر مرونة وأكثر سهولة في استخدامها، لأنه يسمح بإنشاء كائنات بدون الحاجة لتمرير كل القيم المطلوبة . اه شكراا لحضرتك جدا جزاك الله كل خير اقتباس
السؤال
Ali Ahmed55
السلام عليكم
الكود ده
وده
ونا هنا بتكلم علي السطر ال def
هل فيه فرق بين لو كتابت الخصائص كده من غير كلمه None ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.