• 0
m ahmed

ماهو المتغير self

سؤال

ماهو المتغير self في بايثون ومتى استخدمه؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

7 إجابة على هذا السؤال .

  • 0

self ليس متغير,

 

للمتغيرات إستعمال واحد و وحيد و هو تحزين قيم معينة

 

x=12

 

هنا x متغير يحمل القيمة 12

 

لا يمكن للمتغيرات أن تحمل أسماء الأسماء المحجوزة مثل print while for ....ect

 

بينما self  كلمة محجوزة, تستخدم في البرمجة الكائنية الموجهة,

 

و لتعرف استعمال self في البرمجة الكائنية الموجهة

 

إليك هذا الرابط: when do use 'self

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

self ليست كلمة محجوزة في بايثون، بل فقط اسم يطلق غالباً على للمعامل الأول الذي يمرر للوظيفة، يمكن تسميته أي اسم، مثلاً this:

 

class Klass:    def method(this):        print(this.name)

 

وسيعمل عادي:

 

>>> o = Klass()>>> o.name = 'Mr.B'>>>>>> o.method()Mr.B>>>

 

إلا أن self الإسم الشائع. وظيفتها أنها تشير للكائن نفسه، في المثال أنشأنا كائن o، في كل مره تستدعي method فإن بايثون ستمرر o ضمنياً في أول معامل.

تم تعديل بواسطه Mr.B
3

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

self ليست كلمة محجوزة لكنه مثل ال methode و class ليست كلمات محجوزة للغة

 

لكن لها دلالاتها بالنسبة كالكلمات المحجوزة

 

لقد وصفتها بأتها كلمة محجوزة حتي أبسط الفهم فقط

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
نعم self ليست محجوزة 

ولغة بايثون تعتمد على ترتيب المتغيرات لتحديد عملها

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الآن فهمت شكرا لكم :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

self ليست كلمة محجوزة في بايثون، بل فقط اسم يطلق غالباً على للمعامل الأول الذي يمرر للوظيفة، يمكن تسميته أي اسم، مثلاً this:

class Klass:    def method(this):        print(this.name)

وسيعمل عادي:

>>> o = Klass()>>> o.name = 'Mr.B'>>>>>> o.method()Mr.B>>>

إلا أن self الإسم الشائع. وظيفتها أنها تشير للكائن نفسه، في المثال أنشأنا كائن o، في كل مره تستدعي method فإن بايثون ستمرر o ضمنياً في أول معامل.

 هل this  في الجافا لها نفس عمل self  في البايثون أي نفس المهمة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

this في جافا هي self في بايثون

عندما تنفذ كود مثل

ahmed=Human('ahmed', 25)ahmed.say_hi()

فيحدث تحويل للكود إلى 

Human.say_hi(ahmed, ....)

وعليه فأول معامل يشير للكائن الحالي

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .