ما هو الكائن في بايثون. لماذا id(a) == id(b) == id(1)?
📁 بايثون, مثال, ذكاء اصطناعي, كتاب, عمل
"
أفصل السؤال.
في كتب بايثون يُكتب أن كل شيء في بايثون هو كائن.
نأخذ النهج التقليدي لدراسة/تعليم لغات البرمجة. لغات Pascal, C, C++، لديها مفهوم "اسم المتغير" (معرف). يرتبط/يُسند قيمة باسم المتغير. تُخزن القيمة في الذاكرة. اسم المتغير هو وسيلة (في النص الأصلي للبرنامج) للوصول إلى خلية الذاكرة للحصول على القيمة المخزنة هناك.
لا أعرف إذا كان القول صحيحًا (بالنسبة للغات المترجمة): بالنسبة للمتغيرات، مثل النوع الصحيح، في وقت تنفيذ البرنامج على الكمبيوتر، يعمل المعالج بالفعل مع عناوين خلايا الذاكرة حيث تُخزن قيم المتغيرات. أي لا يوجد شيء مثل أن اسم المتغير يُخزن في مكان ما في عنوان معين ويرتبط بعنوان الخلية التي تحتوي على القيمة.
الآن ننتقل إلى بايثون. في هذه اللغة كل شيء هو كائن، حتى تعريف الدالة.
المتغير كائن، القيمة كائن، إلخ. في أوقات مختلفة، مع نفس الـ