Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyOpAdCOM 25 of 174 menu
◀ ▶

Манипуляция объектами в классах в ООП в Python

Классы параметрами методов могут принимать объекты других классов и манипулировать этими объектами. Давайте посмотрим на примере. Пусть у нас есть следующий класс:

class User: def __init__(self, name): self.__name = name @property def name(self): return self.__name

Пусть мы решили сделать класс, который будет манипулировать набором объектов с юзерами:

class UsersCollection: pass

Будем хранить объекты с юзерами в виде списка в приватном свойстве:

class UsersCollection: def __init__(self): self.__users = []

Сделаем метод для добавления нового юзера в список:

class UsersCollection: def __init__(self): self.__users = [] def add(self, user): self.__users.append(user)

А теперь сделаем метод, который выведет имена всех юзеров:

class UsersCollection: def __init__(self): self.__users = [] def add(self, user): self.__users.append(user) def show(self): for user in self.__users: print(user.name)

Давайте посмотрим на работу нашего класса. Для начала создадим его объект:

uc = UsersCollection()

Теперь добавим в нашу коллекцию несколько юзеров:

uc.add(User('john')) uc.add(User('eric')) uc.add(User('kyle'))

А теперь вызовем метод, который выведет имена всех юзеров:

uc.show()

Сделайте класс EmployeesCollection, который будет содержать список работников.

Сделайте в этом классе метод для добавления нового работника.

Сделайте в этом классе метод для вывода всех работников.

Сделайте в этом классе метод для расчета суммарной зарплаты всех работников.

Сделайте в этом классе метод для расчета средней зарплаты всех работников.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить