Advertisement
Helkarth

Untitled

Oct 15th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.19 KB | None | 0 0
  1. ####################
  2. #
  3. # Travail TD1
  4. # Realise par: Caroline Beauchamp
  5. # Remise: 09/10/2018
  6. #
  7. ####################
  8.  
  9. # importation du CSV contenant les donnees
  10.  
  11. import csv #importation du module CSV
  12.  
  13.  
  14. data = [] # =creation du tableau de donnees
  15.  
  16. #lecture du fichier, a noter que le "path" doit etre modifie selon lemplacement du fichier CSV
  17. with open('C:\\Users\\mydar\\Downloads\\census_data_1.csv', 'rb') as csvfile:
  18.     csvreader = csv.reader(csvfile, delimiter=';')
  19.     for row in csvreader:
  20.         data.append(row) #ajout des lignes du csv dans data
  21. del data[0] #pour enlever l entete de liste
  22.  
  23. #attribution des variables
  24. pop2004=[]
  25. pop2013=[]
  26.  
  27. pays_POP_croissance = "null"
  28. diff_popC = 0  # type: int
  29. diff_pop_MAX = 0 # type: int
  30. diff_P_popC= 0  # type: float
  31. diff_P_pop_MAX= 0  # type: float
  32. pays_P_POP_croissance= "null"
  33.  
  34. pays_POP_decroissance = "null"
  35. diff_popD = 0  # type: int
  36. diff_pop_MIN = 9999999999. # type: int
  37. diff_P_popD= 0  # type: float
  38. diff_P_pop_MIN= 9999999999.  # type: float
  39. pays_P_POP_decroissance= "null"
  40.  
  41. hommesPlus= []
  42. count_homme=0
  43.  
  44.  
  45. #en conservant tt les valeur on peut reutiliser popAN
  46. for i in data:
  47.     if i[2] == '2004':
  48.         pop2004.append(i)
  49.  
  50.     elif i[2] == '2013':
  51.         pop2013.append(i)
  52.  
  53.  
  54. for x in pop2004:
  55.     for j in pop2013:
  56.         if x[1] == j[1] and x[4] != '(NA)':
  57.             diff_popC = (int(j[4]))-(int(x[4]))
  58.             if (diff_popC) > (diff_pop_MAX):
  59.                 diff_pop_MAX = diff_popC
  60.                 pays_POP_croissance = x[1]
  61.  
  62. print pays_POP_croissance
  63.  
  64. #q2 diff en pourcentage
  65. for x in pop2004:
  66.     for j in pop2013:
  67.         if x[1] == j[1] and x[4] != '(NA)':
  68.             diff_P_popC = (((float(j[4]))-(float(x[4])))/(float(x[4])))*100
  69.             if (diff_P_popC) > (diff_P_pop_MAX):
  70.                 diff_P_pop_MAX = diff_P_popC
  71.                 pays_P_POP_croissance = x[1]
  72.  
  73. print pays_P_POP_croissance, diff_P_pop_MAX
  74.  
  75. #q3
  76. for x in pop2004:
  77.     for j in pop2013:
  78.         if x[1] == j[1] and x[4] != '(NA)':
  79.             diff_popD = (int(j[4]))-(int(x[4]))
  80.             if (diff_popD) < (diff_pop_MIN):
  81.                 diff_pop_MIN = diff_popD
  82.                 pays_POP_decroissance = x[1]
  83.  
  84. print pays_POP_decroissance#ecrire belle phrase
  85.  
  86. #q4
  87. for x in pop2004:
  88.     for j in pop2013:
  89.         if x[1] == j[1] and x[4] != '(NA)':
  90.             diff_P_popD = (((float(j[4]))-(float(x[4])))/(float(x[4])))*100
  91.             if (diff_P_popD) < (diff_P_pop_MIN):
  92.                 diff_P_pop_MIN = diff_P_popD
  93.                 pays_P_POP_decroissance = x[1]
  94.  
  95. print pays_P_POP_decroissance, diff_P_pop_MIN #ecrire belle phrase
  96.  
  97. #q5
  98. annee = []  #creation de liste dannee pck peut varier si on change de file
  99. for i in data:
  100.        if i[2] not in annee:
  101.           annee.append(i[2])
  102.  
  103. for i in data:
  104.     if i[5] > i[6] and i[5] != '(NA)' and i[6] != '(NA)' and all(annee): #je sais pas si jai le droit ms ca evite de faire
  105.         if i[1] not in hommesPlus:
  106.             hommesPlus.append(i[1]) #si on veut aller consulter la liste des pays, appeler hommesPlus
  107.             count_homme+=1
  108.  
  109. print count_homme #belle phrase
  110.  
  111. #q6
  112.  
  113. print max(pop2013, key=lambda element:element[4])
  114.  
  115. #HAAAAALLLLPPPPP
  116.  
  117.  
  118. #q7
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement