Задачи на ООП в Python. Часть 7
Сделайте класс Num с двумя публичными
атрибутами класса: num1 и num2.
Запишите в первое число 2, во второе —
3. Выведите сумму этих атрибутов
на экран (обращение через имя класса).
Сделайте класс Num с двумя приватными
атрибутами класса __num1 и __num2
со значениями 2 и 3 по умолчанию.
Сделайте в классе Num статический
метод getSum, который вернет сумму
__num1 и __num2. Вызовите его
через имя класса.
Дан следующий код:
class Math:
def getSum(self, a, b):
return a + b
def getProduct(self, a, b):
return a * b
Переделайте методы класса на статические
(декоратор @staticmethod). Вызовите
их через имя класса.
Дан следующий код:
class ArraySumHelper:
def getSum1(self, arr):
return self.getSum(arr, 1)
def getSum2(self, arr):
return self.getSum(arr, 2)
def getSum3(self, arr):
return self.getSum(arr, 3)
def getSum4(self, arr):
return self.getSum(arr, 4)
def getSum(self, arr, power):
total = 0
for elem in arr:
total += elem ** power
return total
Переделайте все методы на статические. Проверьте работу, передав список чисел.
Сделайте класс, у которого будет и обычный метод экземпляра, и статический метод. Вызовите оба.
Дан следующий класс:
class Test:
@staticmethod
def show():
return '+++'
Вызовите show как метод класса
и как метод объекта.
Дан следующий код:
class User:
count = 0
def __init__(self, name):
self.name = name
User.count += 1
Создайте несколько объектов User
и выведите значение User.count.
Сделайте счетчик count приватным
(__count). Добавьте статический метод
getCount, возвращающий его значение.
Сделайте метод getCount методом класса
(декоратор @classmethod) и обратитесь
к __count через параметр cls.