VALOR_VETOR = 6
nota1 = []
nota2 = []
nota3 = []
mediaAluno = []
soma1 = 0
soma2 = 0
soma3 = 0
somaMedia = 0
mediaTurma = 0
print("Digite as notas dos alunos\n\n")
for i in range (VALOR_VETOR):
print(f"Aluno {i}")
valor = float(input(f"Nota 1: "))
nota1.append(valor)
valor = float(input(f"Nota 2: "))
nota2.append(valor)
valor = float(input(f"Nota 3: "))
nota3.append(valor)
valor = (nota1 nota2 nota3)/3
mediaAluno.append(valor)
print (f"Nota final = {mediaAluno[i]:.1f}")
for i in range (VALOR_VETOR):
soma1 = soma1 nota1
soma2 = soma2 nota2
soma3 = soma3 nota3
somaMedia = somaMedia mediaAluno
mediaProva1 = soma1/VALOR_VETOR
print(f"A media da primeira prova é = {mediaProva1:.1f}")
mediaProva2 = soma2/VALOR_VETOR
print(f"A media da segunda prova é = {mediaProva2:.1f}")
mediaProva3 = soma3/VALOR_VETOR
print(f"A media da primeira prova é = {mediaProva1:.1f}")
mediaTurma = somaMedia/VALOR_VETOR
I am a python learner try, searched, but could not do. please help me.
line 23, in valor = (nota1 nota2 nota3)/3 TypeError: unsupported operand type(s) for /: 'list' and 'int'
CodePudding user response:
When you use the ' ' operator with lists it will return a list with all the 3 lists concatenated for example:
l1 = [1,2] l2 = [5,7] l = l1 l2 # [1,2,5,4]
I think you expect to get l =[6,9]
also the operator '/' is not defined for a list
so l/3 will return an error
if you want to to sum individual elements in a list you can use below code i used for loop for clarity but you can use list comprehension or lambda or ...
l =[]
for i in range(len(l1)):
l.append(l1[i] l2[i])
""" to make the division we can use the same for loop or make another
loop"""
for x in range(len(l)):
l[x] = l[x]/3
CodePudding user response:
valor = (nota1 nota2 nota3)/3 //error
try this line of code as:
valor=sum(sum(nota1) sum(nota2) sum(nota3))/3 //it should work