1
resposta

[Sugestão] Hora da prática: instância de uma classe - Solução proposta

class Restaurante():
    nome = ''
    categoria=''
    ativo=False

restaurante_praca = Restaurante()
restaurante_praca.nome='Praça'
restaurante_praca.categoria='Gourmet'
restaurante_praca.ativo=False

restaurantes =[restaurante_praca]

print(vars(restaurante_praca))


print('\nExercício 1. Atribua o valor \'Italiana\' ao atributo categoria da instância restaurante_praca da classe Restaurante.')
restaurante_praca.categoria='Italiana'
print(vars(restaurante_praca))

print('\nExercício 2. Acesse o valor do atributo nome da instância restaurante_praca da classe Restaurante.\n')
print(restaurante_praca.nome)

print('\nExercício 3. Verifique o valor inicial do atributo ativo para a instância restaurante_praca e exiba uma mensagem informando se o restaurante está ativo ou inativo.')
if restaurante_praca.ativo == False: 
    print(f'O restaurante {restaurante_praca.nome} está inativo.') 
else:
    print(f'O restaurante {restaurante_praca.nome} está ativo.')

print('\nExercício 4. Acesse o valor do atributo de classe categoria diretamente da classe Restaurante e armazene em uma variável chamada categoria.')
categoria = restaurante_praca.categoria
print(categoria)

print('\nExercício 5. Altere o valor do atributo nome para \'Bistrô\'.\n')
restaurante_praca.nome='Bistrô'
print(vars(restaurante_praca))
print('\nExercício 6. Crie uma nova instância da classe Restaurante chamada restaurante_pizza com o nome \'Pizza Place\' e categoria \'Fast Food\'.')
restaurante_pizza=Restaurante()
restaurante_pizza.nome='Pizza Place'
restaurante_pizza.categoria='Fast Food'
restaurante_pizza.ativo=False
restaurantes =[restaurante_praca, restaurante_pizza]
print(vars(restaurante_pizza))

print('\nExercício 7. Verifique se a categoria da instância restaurante_pizza é \'Fast Food\'.')
if restaurante_pizza.categoria == 'Fast Food':
    print(f'O {restaurante_pizza.nome} é da categoria Fast Food')
else:
    print(f'O {restaurante_pizza.nome} não é da categoria Fast Food')

print('\nExercício 8. Mude o estado da instância restaurante_pizza para ativo.')
restaurante_pizza.ativo=True
print(restaurante_pizza.ativo)

print('\nExercício 9. Imprima no console o nome e a categoria da instância restaurante_praca.')
print(restaurante_praca.nome,restaurante_praca.categoria)
1 resposta

Boa tarde, Estudante! Tudo bem com você?

Meus parabéns pelo código bem elaborado, você está no caminho certo. Gostei especialmente da forma como você utilizou a função vars() para exibir os atributos das instâncias de sua classe. Isso facilita bastante a depuração e visualização dos dados armazenados.

Spoiler: Nas próximas aulas você vai aprender a melhorar a definição da classe usando o método __init__ para inicializar os atributos de forma mais elegante.

Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!