1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| #!/usr/bin/env python
# -*- coding: utf-8 -*-
# Statistiques
def stat(fic):
fp=open(fic, "r")
# Récupération N et R
(N, R)=(int(x) for x in fp.readline().split(" "))
# Récupération nb visiteurs
visiteurs=[int(x) for x in fp.readline().split(" ")]
if len(visiteurs) != N:
fp.close()
raise IOError, "Le nombre (%d) de visiteurs ne correspond pas au nombre (%d) attendu" % (len(visiteurs), N)
# if
# Récupération périodes
periode=[[int(x) for x in lig.split(" ")] for lig in fp]
if len(periode) != R:
fp.close()
raise IOError, "Le nombre (%d) de périodes ne correspond pas au nombre (%d) attendu" % (len(periode), R)
# if
# Fichier traité
fp.close()
# Traitement de chaque periode (rappel, en Python un indice commence à 0 alors que dans le fichier il commence à 1 => -1 à chaque fois...)
for p in periode: yield sum(visiteurs[p[0] - 1:p[1]])
# stat()
for x in stat("fic"):
print x |
Partager