ayuda con un problema de python
Chema Cortés
ch3m4 en ch3m4.org
Lun Ago 11 14:02:19 CEST 2003
Chema Cortés escribió:
OJO!, he tenido algunos fallos en el código que he puesto (aún no me he
recuperado de las fiestas de Huesca)
> for c in codigos:
> if c==codigo_asig:
> posic=c
> break # ya no hace falta seguir mirando
ERROR1: Aquí 'posic' sería el código de la asignatura, no la posición de
la columna.
> Aquí tienes mal puestos los if's. Deberías haber combinado los dos:
>
> if notas[i][j]<>'-1' or notas[i][j]<>'-2':
> ...
>
La combinación sería con 'and', no con 'or'
> Te pongo la versión con compresión de listas (y python 2.3); pero
> deberías seguir intentándolo como lo venías haciendo hasta ahora:
>
> def (nif, codigos,notas,codigo_asig):
> posic=notas.index(codigo_asig)
> notas_asignatura=[n[posic] for n in notas]
> notas_presentados=[n for n in notas_asignaturas if n>=0]
>
> media=sum(notas_presentados)/len(notas_presentados)
>
> for i,n in enumerate(notas_asignatura):
> if n>media:
> print nif[i],n
Incompresiblemente (para mí), en este código creo que no he cometido
hErrores :-P
Más información sobre la lista de distribución Python-es