当我将promedios[x]=float(punteos/3)放入时,如果假设x在for outside中有一个像position这样的int值,就会出现这个问题。我用新的修改修改了代码
def alumno(nombre, apellido):
print('Nombre: ', nombre, 'Apellido: ', apellido)
def promedio(a,b,c):
promedio1 = int(a+b+c)/3
#return promedio1
print(promedio1)
nombre = input('ingrese nombre: ')
apellido = input('ingrese apellido: ')
alumno(nombre,apellido)
print()
#promedio(1,2,3)
print('Ingrese los punteos de las Materias:')
punteo = 0
materias = 5
for x in range(0, materias):
punteos = 0
notas = 3
promedio1 = 0
promedios = []
xx = 1
for y in range(0, notas):
punteo = int(input("Ingrese punteo de la Materia "+str(x+1)+" punteo "+str(y+1)+": "))
punteos = int(punteos + punteo)
promedio1 = float(punteos/3)
promedios.append(promedio1)
print('El promedio de la materia ',x+1,' es ',promedio1)
print(promedios[x])
您需要从一个空列表开始:
然后在其后面附加:
只要您已经完成了
promedios = 0
并且不再修改代码promedios[x] = float(punteos / 3)
行之前的变量promedios
,promedios
就是该行的int
但是,执行
promedios[x] = ...
调用变量promedios
的__setitem__
方法,该方法属于int
类型,当然不支持此类项赋值顺便说一句,像
list
、dict
这样的类型支持项分配相关问题 更多 >
编程相关推荐