فهم "العناصر القابلة للاستدعاء" في بايثون
تقدم بايثون مفهومًا يُعرف باسم "القابل للاستدعاء"، والذي يشمل أي شيء يمكن استدعاؤه مثل وظيفة. تقوم الوظيفة القابلة للاستدعاء المضمنة بتقييم ما إذا كان هناك شيء يمتلك طريقة __call__ أو عضو tp_call غير صفري.طريقة __call__
يتم استدعاء طريقة __call__ عندما يتم استدعاء كائن يتم التعامل معها كوظيفة. فهو يمكّن الكائنات من التصرف مثل الوظائف، مما يسمح بوظائف مخصصة عند استدعائها بين قوسين.
مثال
خذ بعين الاعتبار المثال التالي:class Foo: مواطن __call__(النفس): طباعة ("يُسمى") foo_instance = Foo() foo_instance() # هذا يستدعي طريقة __call__
class Foo: def __call__(self): print('called') foo_instance = Foo() foo_instance() # This invokes the __call__ methodفي هذه الحالة، يؤدي استدعاء foo_instance() إلى تشغيل طريقة __call__، مما يؤدي إلى طباعة كلمة "استدعاء" على وحدة التحكم.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3