Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Atividade S08 - Carla Freitas #27

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

freitascarla
Copy link

Exercício da oitava semana do Curso de Python - Reprograma.

Copy link
Collaborator

@mayaracsferreira mayaracsferreira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parabéns pela entrega!!!

Vc mostrou dominio do TDD, muita autonomia sobre o código, cobriu varios cenarios em cada um dos métodos dando retornos muito concisos com mensagens significativas.
Além disso documentou bem o que cada propriedade e método faz com docstring e aplicou os testes necessários em cada método!

Arrasou demais!


# para acessar os atributos da classe livro: livro_nomeatributo

if livro.tituloLivro in self.acervo and livro.estaEmprestado == False:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Muito bacana que fez a verificação se o livro já está emprestado antes de alterar o status novamente

Aqui só tem uma pequena correção:
Vc está verificando se o seu parametro recebido (livro) está com o status de emprestado como falso.

é importante a gente validar com as propriedades da própria classe no caso seria:

and self.acervo[x].estaEmprestado == False:

onde x é a posição do seu livro do acervo, e para encontrar o livro correto na lista tem algumas formas, a mais comum sendo o uso da função index()

E agora a dúvida: por que funcionou dessa forma?
parabéns você acaba de conhecer mais uma mania do Python!!
quando a gente cria um objeto e atribui esse objeto a outro eles guardam a mesma referencia, então quando altera um o outro também é alterado.
para se aprofundar nesse assunto aqui um artigo Python - A diferença entre “Deep Copy e Shallow Copy”

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants