Skip to content

Conversation

@mariaacamila
Copy link

Para o desenvolvimento do projeto eu usei:

  • Funções
  • for
  • if / else
  • try / except
  • while True
  • Loops
  • break

Comment on lines +58 to +59
presenca = entrada == "True"
aulas.append(presenca)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Bom uso da lógica para guardar a presença :)

Comment on lines +104 to +105
for nome in dataset:
print(f"- {nome}")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Aqui o esperado é trazer o nome e sobrenome da aluna, não a tupla em si. É necessário buscar na relação das chaves do dicionário o valor no índice 0 e 1 da tupla ou dar nomes para cada um deles, desta forma:

Sugestão:

Suggested change
for nome in dataset:
print(f"- {nome}")
for nome, sobrenome in dataset.keys():
print(f'Nome: {nome} {sobrenome}')

nome = input("Nome da aluna: ")
sobrenome = input("Sobrenome da aluna: ")
notas_aluna = dataset[(nome, sobrenome)]["Notas"]
if (nome, sobrenome) in dataset:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Neste ponto podemos remover esta validação, já que caso não tenha dados no dataset, já foi colocado uma exception.

nome = input("Nome da aluna: ")
sobrenome = input("Sobrenome da aluna: ")
lista_presenca = dataset[(nome, sobrenome)]["Presença"]
if (nome, sobrenome) in dataset:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Neste ponto podemos remover esta validação, já que caso não tenha dados no dataset, já foi colocado uma exception.

if chave in dataset:
dados = dataset[chave]
notas = dados["Notas"]
soma = sum(notas)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Ao pensar em nomes de variáveis, avaliamos se o nome responde o que ela carrega como valor. Neste caso, poderiamos colocar "soma_notas". Não necessariamente precisaria estar isoladamente aqui, poderia ser calculado direto na nota_media também :)

percentual_presenca = qtd_presenca / len(dados["Presença"])
nota_media = soma / len(notas)

print(f"A aluna {nome} {sobrenome} está com a nota média {nota_media:.2f}")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Ótima formatação da saída!

return notas

def salvar_dados_aluna(nome, sobrenome, turma, lista_presenca, nota_participacao, notas):
chave = f"{nome} {sobrenome}"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Neste trecho o código está armazenando os dados no dicionário como uma chave de string concatenada, mas o formato esperado era uma tupla de dois elementos com (nome, sobrenome).

Sugestão:

Suggested change
chave = f"{nome} {sobrenome}"
chave = (nome, sobrenome)

Comment on lines +90 to +91
"Nome": nome,
"Sobrenome": sobrenome,
Copy link
Collaborator

Choose a reason for hiding this comment

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

Como utilizamos o nome e sobrenome na chave, não é necessário adicionar o nome e sobrenome do corpo do dicionário.

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