In backend way
101 subscribers
30 photos
8 videos
8 files
16 links
اینجا هیچ چیز خاصی نمیبینی صرفا دارم آموزش هایی که میبینم رو به زبون خودم واسه خودم داکیومنت میکنم شاید به درد تو هم بخوره
Download Telegram
In backend way
وراثت یه همچین حالتیه که ما مثلا یه دونه کلاس داریم که حالا یه سری اطلاعات رو میگیره بعد از این یه کلاس دیگه هم داریم که علاوه بر اطلاعات کلاس اول خودش هم یه سری اطلاعات دیگه داره
class person:
def __init__(self , name , family , age):
self.name = name
self.family = family
self.age = age
def showfullname(self):
return f'name = {self.name} ' \
f'family = {self.family}' \
f'age = {self.age}'
def __repr__(self):
return f'name = {self.name} '\
f'family = {self.family}'\
f'age = {self.age}'

class user(person):
pass

me=person('matin' , 'kalamipour' , 19)
you = user('matin' , 'kalamipour' , 19)
خب
فانکشنای getter و setter
هیچ توضیحی خاصی نمیتونم واسشون بیارم
باید با کد نشونشون بدم

@matrix_py
class user:
def __init__(self, name , age):
self.name = name
if age>0:
self._age=age
else:
self._age=0


def get_age(self):
return self._age

def set_age(self , valueAge):
if valueAge>=0:
self._age=valueAge


@matrix_py
دکوریتور property : این میاد در واقع کار دوتا فانکشنی که بالا تعریف کردیم رو انجام میده فقط با این تفاوت که دیگه نیازی نیست حتما فانکشن رو فراخوانی کنیم.

@matrix_py
In backend way
دکوریتور property : این میاد در واقع کار دوتا فانکشنی که بالا تعریف کردیم رو انجام میده فقط با این تفاوت که دیگه نیازی نیست حتما فانکشن رو فراخوانی کنیم. @matrix_py
class user:
def __init__(self , age):
if age >=0:
self._age = age
else:
self._age = 0

@property
def age(self):
return self._age

@age.setter
def age(self , value):
if value >=0:
self._age = value
else:
raise ValueError('invalid value')

me = user(20)
print(me.age)
me.age = 40
print(me.age)


@matrix_py
کار فانکشن super توی بحث وراثت چیه؟

@matrix_py
In backend way
کار فانکشن super توی بحث وراثت چیه؟ @matrix_py
از کد نویسی دوباره جلو گیری میکنه و اطلاعاتی که داخل کلاس اول هست رو به کلاس دوم میده

@matrix_py
In backend way
از کد نویسی دوباره جلو گیری میکنه و اطلاعاتی که داخل کلاس اول هست رو به کلاس دوم میده @matrix_py
class person:
def __init__(self,name , family):
self.name = name
self.family = family

@property
def fullname(self):
return f'{self.name} {self.family}'

class user(person):
def __init__(self , name , family , age):
super().__init__(name , family)
self.age = age


me=user('matin' , 'kalamipour' , 20)
print(me.fullname)


@matrix_py
وراثت چندگانه توی پایتون یعنی اینکه یک کلاس میتونه از چندین کلاس مختلف ارث بری کنه

@matrix_py
In backend way
وراثت چندگانه توی پایتون یعنی اینکه یک کلاس میتونه از چندین کلاس مختلف ارث بری کنه @matrix_py
یه نکته ای که وجود داره موقعی که شما میخوای به یک کلاس وراثت چند گانه بدی اگه از دستور ()super استفاده کنی میاد وراثت رو به اولین کلاسی که به کلاس نسبت دادی میده

@matrix_py
In backend way
یه نکته ای که وجود داره موقعی که شما میخوای به یک کلاس وراثت چند گانه بدی اگه از دستور ()super استفاده کنی میاد وراثت رو به اولین کلاسی که به کلاس نسبت دادی میده @matrix_py
class person:
def __init__(self , name):
self.name = name
print(f'{self.name} person class')
class user:
def __init__(self, name):
self.name =name
print(f'{self.name} user class')
class admin(person , user):
def __init__(self , name):
super().__init__(name)
print(f'{self.name} admin class')

me = admin('matin') # => result = matin person class , matin admin class


@matrix_py
اگه دیباگ کردن فرایند حذف کردن باگ هاست پس برنامه نویسی هم فرایند اضافه کردن باگ هاست

@matrix_py
Forwarded from Programming facts (Soheil)
نقشه راه یادگیری پایتون.

نکته مهم: رفقا به روز ها و ساعت ها توی این پست ها دقت نکنید، همش فیکن و هرکدوم از این کانسپت ها یک مدت زمان میبرن، شما فقط با ترتیب ها باید جلو برید، و خودتون با توجه به تایم و تمرینی که میکنید، یاد بگیرید🙏♥️

@soheil_programmer
خب با توجه به راهی که پیش رومونه گفتم یه چشم اندازی از راهی که پیش گرفتیم بدم که هم خودم بدونم دارم چیکار میکنم و قراره بعدش چیکار کنم هم بقیه

@matrix_py