Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 16.10.2020
Сообщений: 121
1

Список из объектов

05.04.2022, 22:36. Показов 465. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создать класс Autopark. Поля: название автопарка, список легковых машин (список экземпляров класса PassengerCar),
список грузовиков (список экземпляров класса Truck). Определить конструктор. Переопределить метод
преобразования в строку для печати всей информации об автопарке (с использованием переопределения в классах
PassengerCar и Truck). Переопределить методы получения количества грузовиков функцией len, получения грузовой
машины по индексу, изменения по индексу, удаления по индексу (пусть номера у грузовых машин считаются с 1,
а индекс 0 – список всех легковых машин). Переопределить операции + и - для добавления или удаления грузовой
машины.

В классах PassengerCar и Truck есть свои методы str для вывода информации. И нужно экземпляры этих классов поместить в список в классе Autopark. Внизу код который я написал. Когда я вывожу объект класса, то выводятся только первый объекты других классов, хотя я добавил for для перебора. При вызове str выводит адреса самих элементов, а не их содержимое. Прошу помочь с решением вопроса.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
from passengercar import PassengerCar
from truck import Truck
from passengercar import mers, bmw
from truck import volvo, daf
 
 
class AutoPark:
 
    def __init__(self, name_of_autopark):
        super().__init__()
        self.name_of_autopark = name_of_autopark
        self.__passengerscar = []
        self.__trucks = []
        self.list_of_car = []
 
    def __str__(self):
        return f"""
        Name of autopark: {self.name_of_autopark},
        List of cars: {[i for i in self.passengers()]}, 
        List of trucks: {self.trucks_()}"""
 
    def passengers(self):
        try:
            for obj in self.__passengerscar:
                return obj
        except SyntaxError and ValueError as arr:
            print(f"Error check again: {arr}")
 
    def trucks_(self):
        try:
            for obj in self.__trucks:
                return obj
        except SyntaxError and ValueError as arr:
            print(f"Error check again: {arr}")
 
    def add_passenger(self, passenger, trucks):
        #if isinstance(passenger, PassengerCar):
            self.__passengerscar.append(passenger)
        #if isinstance(trucks, Truck):
            self.__trucks.append(trucks)
 
    def add_list(self):
        self.list_of_car.append(self.__trucks)
        self.list_of_car.append(self.__passengerscar)
 
    def __len__(self):
        return len(self.__trucks)
 
    def __getitem__(self, get_el):
        return self.list_of_car[get_el]
 
    # def __getitem__(self, get_el):
    #     return self.__passengerscar[get_el]
 
    def __sub__(self, del_el):
        del self.__trucks[del_el]
 
    def del_car(self, del_el):
        del self.__passengerscar[del_el]
 
 
if __name__ == '__main__':
 
    u = AutoPark('Fiyetville')
    u.add_passenger([mers, bmw], [volvo, daf])
    # u.add_passenger(bmw, daf)
    u.add_list()
    print(u['Volvo'])
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.04.2022, 22:36
Ответы с готовыми решениями:

при выполнении команды Список объектов должна открыться общая форма Список объектов, в таблицу которой будет выведен пер
Форумчане! Еще вопрос, прошу помочь найти его решение. "Создать общую форму СписокОбъектов (на...

Адреса созданных объектов отличаются от адресов этих же объектов, добавленных в список
Мне проконсультироваться :) У меня в проге есть абстрактный класс, производные от него классы....

Создать список объектов Компьютер. Найти список компьютеров марки «Apple» c объемом жесткого диска > 1Tb. Подсчитать кол
Создать список объектов Компьютер. Найти список компьютеров марки «Apple» c объемом жесткого диска...

Создать список объектов Автопарк. Найти список автобусов маршрута #83. Подсчитать общее кол-во пассажиров всех автобусов
Создать список объектов Автопарк. Найти список автобусов маршрута #83. Подсчитать общее кол-во...

Создать список объектов Кредиты.Найти список кредитов банка Каспий. Подсчитать общую сумму кредитов, взятых в 2010 году
Создать список объектов Кредиты.Найти список кредитов банка Каспий. Подсчитать общую сумму...

0
05.04.2022, 22:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.04.2022, 22:36
Помогаю со студенческими работами здесь

Список объектов
Почему в списке один и тот же инстанс ? Как сделать нормально ? #!/usr/bin/python3 import...

Список объектов
Здравствуйте. Можно ли в Access2000 получить список объектов (например формы) в виде массива?...

Список объектов
Добрый день, в шеле новичок прошу подсказать как работать со списками объектов. К примеру, я...

Список объектов
Ищу с Github API список репотизориев и юзеров. Как объединить общие признаки у двух списков, что бы...

Список объектов на сайте
Есть веб-сайт, открыв его, например, в мозиле, можно посмотреть список объектов скачанных на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru