Advertisement
Tchae

Untitled

May 18th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.29 KB | None | 0 0
  1. #! /usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4.  
  5. # On lit le fichier
  6. streamin=open('150529.nfo','r')
  7. a=streamin.read()
  8. streamin.close()
  9.  
  10.  
  11. # On transforme le fichier en un tableau
  12. a=a.split('\n')
  13. # Il y a un élément vide à la fin
  14. a=a[:-1]
  15. # 7 lignes et 16 colonnes
  16. for i in range (len(a)):
  17.     a[i]=a[i].split()
  18.  
  19.  # avec une lambda expression
  20. b=sorted(a, key=lambda colonnes: colonnes[1])
  21.  
  22. for i in range (len(a)):
  23.     for j in range(3):    print b[i][j],
  24.     mean=sum([eval(x) for x in b[i][3:]])/13.0
  25.     print round(mean,1)
  26.  
  27. print
  28.  
  29. # En utilisant un dictionnaire
  30. # Les clefs du dictionnaire sont les noms, ses valeurs les lignes du tableau
  31. bulletin={}
  32. for i in range(len(a)):
  33.     bulletin[a[i][1]]=a[i]
  34.  
  35.  
  36. for nom in sorted(bulletin):
  37.     for j in range(3):    print bulletin[nom][j],
  38.     mean=sum([int(x) for x in bulletin[nom][3:]])/13.0
  39.     bulletin[nom].append( round(mean,1))
  40.     print bulletin[nom][16]
  41.  
  42.  
  43. # Enregistrement des bulletins
  44. streamout=open('150529 moyennes.nfo','w')
  45. for nom in sorted(bulletin):
  46.     for j in range (3) : streamout.write(bulletin[nom][j]+' ')
  47.     streamout.write(str(bulletin[nom][16])+'\n')
  48. streamout.close()
  49. print
  50.  
  51. # On vérifie l'enregistrement
  52. streamin=open('150529 moyennes.nfo','r')
  53. print streamin.read()
  54. streamin.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement