itachi

تفاوت فراخوانی super ارث بری

به کد زیر توجه کنید:
class A:
    def __init__(self):
        print(1)
class B(A):
    def __init__(self):
        super(A, self).__init__()
        print(2)


obj = B()

خروجی تکه کد بالا عدد ۲ است. حال اگر super را بصورت زیر بنویسیم:
super().__init__()
خروجی بصورت زیر خواهد بود:
1
2

چرا خروجی متفاوت است؟
#inheritence #super() #ارث_بری #پایتون
لذت یادگیری با توسینسو
به عنوان شخصی که مدت هاست از سایت توسینسو استفاده می کنم باید بگم که واقعاً یکی از بهترین مرجع ها برای ارتقاء دانش شخصی هست. دوره های سایت، راهکارها و مطالب، همگی عالی هستند.
پاسخ شما
برای ارسال پاسخ خود وارد شوید.
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره بهاره می تونی امروز ارزونتر از فردا خرید کنی ....