def media (auto):
return sum(auto.notas) / len(auto.notas)
def v_notas (auto):
media = auto.media()
for valor, nota in (70, "Aprovado"):
if media >= valor :
return nota
else:
return "Reprovado"
def main():
print()
print('Coletando informações da turma')
a_aula = []
while True:
print()
print('{} alunos'.format(len(a_aula)))
another_estudante = input('append outro aluno ? (s/n) ')
if another_estudante[0].lower() != 's':
break
print()
nome_do_estudante = input('What is the student\'s name? ')
a_aula.append(estudante(nome_do_estudante))
print()
print('Estudante :', nome_do_estudante)
print('-------------------')
numero_de_testes = int(input('Por favor, insira o número de testes : '))
for test_num in range(1, numero_de_testes+1):
print('Teste Numero {}'.format(test_num), end='')
score = float(input(' : '))
if score < 0:
break
a_aula[-1].acrescentar_notas(score)
print_report(a_aula)
def print_report(a_aula):
print()
print('Relatório')
print()
for estudante in sorted(a_aula, key=lambda o: o.nome):
print('aluno: {: 20s} pontuação média no teste: {: 3.2f} nota: {}'.format(
estudante.nome, estudante.media(), estudante.v_notas()))
print()
print('The aula media is {:.2f}'.format(aula_media(a_aula)))
def aula_media(a_aula):
return sum(estudante.media() for estudante in a_aula) / len(a_aula)
main()
erro:
Traceback (most recent call last):
File "main.py", line 58, in <module>
main()
File "main.py", line 43, in main
print_report(a_aula)
File "main.py", line 51, in print_report
estudante.nome, estudante.media(), estudante.letter_grade()))
File "main.py", line 13, in letter_grade
for value, nota in (70, "Aprovado"):
TypeError: cannot unpack non-iterable int object
Pergunta
alibaba
class estudante(object):
def __init__(auto, nome):
auto.nome, auto.notas = nome, []
def acrescentar_notas(auto, nota):
auto.notas.append(nota)
def media (auto):
return sum(auto.notas) / len(auto.notas)
def v_notas (auto):
media = auto.media()
for valor, nota in (70, "Aprovado"):
if media >= valor :
return nota
else:
return "Reprovado"
def main():
print()
print('Coletando informações da turma')
a_aula = []
while True:
print()
print('{} alunos'.format(len(a_aula)))
another_estudante = input('append outro aluno ? (s/n) ')
if another_estudante[0].lower() != 's':
break
print()
nome_do_estudante = input('What is the student\'s name? ')
a_aula.append(estudante(nome_do_estudante))
print()
print('Estudante :', nome_do_estudante)
print('-------------------')
numero_de_testes = int(input('Por favor, insira o número de testes : '))
for test_num in range(1, numero_de_testes+1):
print('Teste Numero {}'.format(test_num), end='')
score = float(input(' : '))
if score < 0:
break
a_aula[-1].acrescentar_notas(score)
print_report(a_aula)
def print_report(a_aula):
print()
print('Relatório')
print()
for estudante in sorted(a_aula, key=lambda o: o.nome):
print('aluno: {: 20s} pontuação média no teste: {: 3.2f} nota: {}'.format(
estudante.nome, estudante.media(), estudante.v_notas()))
print()
print('The aula media is {:.2f}'.format(aula_media(a_aula)))
def aula_media(a_aula):
return sum(estudante.media() for estudante in a_aula) / len(a_aula)
main()
erro:
Traceback (most recent call last):
File "main.py", line 58, in <module>
main()
File "main.py", line 43, in main
print_report(a_aula)
File "main.py", line 51, in print_report
estudante.nome, estudante.media(), estudante.letter_grade()))
File "main.py", line 13, in letter_grade
for value, nota in (70, "Aprovado"):
TypeError: cannot unpack non-iterable int object
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.