Presentation is loading. Please wait.

Presentation is loading. Please wait.

#definir lista de n "filas" y 4 "columnas" L=[] #leer lineas de primer archivo for linea in open("notas1.txt"): #agregar lista.

Similar presentations


Presentation on theme: "#definir lista de n "filas" y 4 "columnas" L=[] #leer lineas de primer archivo for linea in open("notas1.txt"): #agregar lista."— Presentation transcript:

1

2

3

4

5

6

7

8

9

10

11

12

13

14 #definir lista de n "filas" y 4 "columnas" L=[] #leer lineas de primer archivo for linea in open("notas1.txt"): #agregar lista con sección, nombre y nota L.append( [linea[0], \ linea[1:21], \ int(linea[21:23])] ) #leer lineas de segundo archivo for linea in open("notas2.txt"): #buscar nombre en lista alumnos de seccion for alumno in L: if alumno[1]==linea[1:21]: break #agregar nota a lista de alumno alumno.append(int(linea[21:23]))

15 #ordenar lista por sección y nombre L.sort() #calcular y guardar planilla final ordenada archivo=open(“planilla.txt","w") for alumno in L: promedio=int((alumno[2]+alumno[3])/2.0+0.5) archivo.write(alumno[0]+ \ alumno[1]+ \ str(alumno[2])+ \ str(alumno[3])+ \ str(promedio)+"\n") archivo.close()

16 Solución 2: Con lista de 8 listas (una por sección) #definir lista de 8 listas (inicialmente vacías) L=[] for i in range(8): L.append([]) #leer lineas primer archivo for linea in open("notas1.txt"): #obtener indice de lista de secciones i=int(linea[0])-1 #agregar [nombre,nota] a lista de seccion L[i].append([linea[1:21],int(linea[21:23])])

17 #leer lineas segundo archivo for linea in open("notas2.txt"): #obtener indice de lista secciones isec=int(linea[0])-1 #buscar nombre en lista de la sección for alumno in L[isec]: if alumno[0]==linea[1:21]: break #agregar nota a lista de alumno de seccion alumno.append(int(linea[21:23]))

18 #grabar planilla archivo=open("planilla.txt","w") #recorrer indices de secciones for i in range(len(L)): #obtener lista de la seccion seccion=L[i] #ordenar lista de la seccion seccion.sort() #recorrer alumnos de la seccion for alumno in seccion: #grabar datos del alumno en planilla promedio=int((alumno[1]+alumno[2])/2.0+0.5) archivo.write(str(i+1)+alumno[0]+ \ str(alumno[1])+str(alumno[2])+ \ str(promedio)+"\n") archivo.close()


Download ppt "#definir lista de n "filas" y 4 "columnas" L=[] #leer lineas de primer archivo for linea in open("notas1.txt"): #agregar lista."

Similar presentations


Ads by Google