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