OccamaRazor
@OccamaRazor

Как присвоить нескольким классам одинаковое значение переменной внутри?

Хочу вытянуть значение цвета фигуры и в дальнейшем использовать. Суть в том чтобы не перебирать if pewka.color == "red" or ladja.color =="red"
а сделать одной переменной или классом:
if figure == "red": #
else: #
class pewka():
    def ___init___(self,x,y,color):
        self.x = x
        self.y = y
        self.color = "red"
class ladja():
    def ___init___(self,x,y,color):
        self.x = x
        self.y = y
        self.color = "red"
  • Вопрос задан
  • 224 просмотра
Решения вопроса 1
Sly_tom_cat
@Sly_tom_cat
.
У вас не классы и не экземпляры - а микс.
Надо что-то типа:
class figura():
    def __init__(self, x, y, colour):
        self.x = x
        self.y = y
        self.colour = colour

class pewka(figura):
    def __init__(self, x, y, colour):
        super().__init__(x, y, colour)
        self.type = "pewka"

class ladja(figura):
    def __init__(self, x, y, colour):
        super().__init__(x, y, colour)
        self.type = "ladja"

и т.п.

Создавать экземпляры - это:

fig1 = pewka('a', 1, 'red')
fig2 = ladja('a', 1, 'red')


тогда можете смело сравнивать

if any_fig.colour = 'red':
...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы