PROGLIB_ACADEMY Telegram 2014
✏️ Вопрос с реального собеседования по Python

В чём разница между методами экземпляра, класса и статическими методами?

Методы экземпляра используют параметр self и относятся к конкретному экземпляру класса.

Статические методы с декоратором @staticmethod не связаны с экземпляром класса и не могут изменять его атрибуты.

Методы класса принимают параметр cls и позволяют изменять сам класс.

class TeaShop:
specialty = 'green tea'

def __init__(self, tea_price):
self.tea_price = tea_price

# instance method
def make_tea(self):
print(f'Making {self.specialty} for ${self.tea_price}')

# static method
@staticmethod
def check_weather(): // Статический метод просто сообщает, что солнечно, не взаимодействуя с экземпляром или классом
print('Its sunny')

# class method
@classmethod
def change_specialty(cls, specialty): // Метод класса меняет фирменный напиток
cls.specialty = specialty
print(f'Specialty changed to {specialty}')

tea_shop = TeaShop(5) // Метод экземпляра (make_tea) создаёт чай с текущими атрибутами экземпляра
tea_shop.make_tea()
# => Making green tea for $5


#собес_academy
👍3



tgoop.com/proglib_academy/2014
Create:
Last Update:

✏️ Вопрос с реального собеседования по Python

В чём разница между методами экземпляра, класса и статическими методами?

Методы экземпляра используют параметр self и относятся к конкретному экземпляру класса.

Статические методы с декоратором @staticmethod не связаны с экземпляром класса и не могут изменять его атрибуты.

Методы класса принимают параметр cls и позволяют изменять сам класс.

class TeaShop:
specialty = 'green tea'

def __init__(self, tea_price):
self.tea_price = tea_price

# instance method
def make_tea(self):
print(f'Making {self.specialty} for ${self.tea_price}')

# static method
@staticmethod
def check_weather(): // Статический метод просто сообщает, что солнечно, не взаимодействуя с экземпляром или классом
print('Its sunny')

# class method
@classmethod
def change_specialty(cls, specialty): // Метод класса меняет фирменный напиток
cls.specialty = specialty
print(f'Specialty changed to {specialty}')

tea_shop = TeaShop(5) // Метод экземпляра (make_tea) создаёт чай с текущими атрибутами экземпляра
tea_shop.make_tea()
# => Making green tea for $5


#собес_academy

BY Proglib.academy | IT-курсы




Share with your friend now:
tgoop.com/proglib_academy/2014

View MORE
Open in Telegram


Telegram News

Date: |

You can invite up to 200 people from your contacts to join your channel as the next step. Select the users you want to add and click “Invite.” You can skip this step altogether. Those being doxxed include outgoing Chief Executive Carrie Lam Cheng Yuet-ngor, Chung and police assistant commissioner Joe Chan Tung, who heads police's cyber security and technology crime bureau. 2How to set up a Telegram channel? (A step-by-step tutorial) In 2018, Telegram’s audience reached 200 million people, with 500,000 new users joining the messenger every day. It was launched for iOS on 14 August 2013 and Android on 20 October 2013. Ng, who had pleaded not guilty to all charges, had been detained for more than 20 months. His channel was said to have contained around 120 messages and photos that incited others to vandalise pro-government shops and commit criminal damage targeting police stations.
from us


Telegram Proglib.academy | IT-курсы
FROM American