1
resposta

Quanto maior o problema, melhor a fixação

Ola Boa tarde tive um pouco de dificuldade na aula, mas como dizem quem quer da um jeito. Foi ai que eu começei a tentar aprender com os exemplos usando chat-gpt e consegui entender a materia muito bem a partir dos conceitos passados em aula por exemplo: classes, metodos, sub-classes e outros

class Animal:
    def __init__(self, nome, dono=None):
        self.nome = nome
        self.dono = dono

    def fazer_som(self):
        pass


class Ave:

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

    def voar(self):
        pass


class Hipster:
    def __init__(self, nome, estilo):
        self.nome = nome
        self.estilo = estilo


class AnimalSilvestre:
    def __init__(self, especie):
        self.especie = especie

    def verificar_animal_silvestre(self):
        return True


class Pinguim(Animal, Ave, AnimalSilvestre):
    def __init__(self, nome, especie):
        Animal.__init__(self, nome)
        Ave.__init__(self, especie)
        AnimalSilvestre.__init__(self, especie)

    def fazer_som(self):
        return "Piu Piu"


class Aguia(Animal, Ave, AnimalSilvestre):
    def __init__(self, nome, especie):
        Animal.__init__(self, nome)
        Ave.__init__(self, especie)
        AnimalSilvestre.__init__(self, especie)

    def fazer_som(self):
        return "Screa"


class Galinha(Animal, Ave, AnimalSilvestre):
    def __init__(self, nome, especie, dono):
        Animal.__init__(self, nome, dono)
        Ave.__init__(self, especie)
        AnimalSilvestre.__init__(self, especie)
        self.animalSilvestre = False
    def fazer_som(self):
        return "Cocorico"


hipster = Hipster("João", "Indie")
pinguim = Pinguim("Ping", "Pinguim Imperador")
aguia = Aguia("Aurora", "Aguia-real")
galinha = Galinha("Giselle", "Galinha", dono=hipster)

print("\n")
print("Nome do pinguim: ", pinguim.nome)
print("Espécie do pinguim: ", pinguim.especie)
print("Som do pinguim: ", pinguim.fazer_som())
print("É um animal silvestre? ", pinguim.verificar_animal_silvestre())

print("\n")
print("Nome da águia: ", aguia.nome)
print("Espécie da águia: ", aguia.especie)
print("Som da águia: ", aguia.fazer_som())
print("É um animal silvestre? ", aguia.verificar_animal_silvestre())

print("\n")
print("Nome da galinha: ", galinha.nome)
print("Espécie da galinha: ", galinha.especie)
print("Som da galinha: ", galinha.fazer_som())
print("É um animal silvestre? ", galinha.animalSilvestre)
print("Dono da galinha: ", galinha.dono.nome)

é bem simples se voce avaliar como uma boneca russa, uma dentro da outra e assim por diante, claro que acaba tendo uma diferença aqui ou ali mas no geral é bem simples

1 resposta

Oii Endrigo, tudo bem?

Obrigada por compartilhar com a gente a sua visão!

O código que você compartilhou envolve conceitos de herança múltipla e o uso de várias classes e interfaces, o que pode ser desafiador, mas também é uma ótima maneira de aprender a estruturar e organizar classes em Python.

Sua analogia com bonecas russas é interessante, pois reflete a ideia de que as classes podem ser aninhadas e herdar características umas das outras.

Um abraço e bons estudos.