La fonction reader
du module csv
permet de
parcourir les lignes du fichier csv, en incluant la première ligne qui,
dans notre cas, ne contient pas de données. Une fois les trois listes
ages
, effectifs_hommes
et
effectifs_femmes
créées en parcourant la valeur renvoyée par
un appel de csv.reader
, il faudra retirer le premier élément
de chacune d'entre elles.
La fonction reader
du module csv
aura
récoupéré les données sous forme de chaines de caractères. Il s'agira
ensuite de convertir les âges et effectifs en nombres entiers.
On pourra afficher l'histogramme demandé dans la question 2 avec la
fonction bar
du module matplotlib.pyplot
.
import csv
ages = []
effectifs_femme = []
effectifs_homme = []
with open('pop-totale-2020.csv', encoding="utf-8", newline='') as f:
lecture = csv.reader(f)
for ligne in lecture :
ages.append(ligne[1])
effectifs_femme.append(ligne[3])
effectifs_homme.append(ligne[2])
ages.pop(0)
effectifs_femme.pop(0)
effectifs_homme.pop(0)
ages = [int(age) for age in ages]
effectifs_femme = [int(effectif) for effectif in effectifs_femme]
effectifs_homme = [int(effectif) for effectif in effectifs_homme]
import csv
import matplotlib.pyplot as plt
ages = []
effectifs_femme = []
effectifs_homme = []
with open('pop-totale-2020.csv', encoding="utf-8", newline='') as f:
lecture = csv.reader(f)
for ligne in lecture :
ages.append(ligne[1])
effectifs_femme.append(ligne[3])
effectifs_homme.append(ligne[2])
ages.pop(0)
effectifs_femme.pop(0)
effectifs_homme.pop(0)
ages = [int(age) for age in ages]
effectifs_femme = [int(effectif) for effectif in effectifs_femme]
effectifs_homme = [int(effectif) for effectif in effectifs_homme]
plt.bar(ages, effectifs_femme)
plt.show()
import csv
ages = []
effectifs_femme = []
effectifs_homme = []
with open('pop-totale-2020.csv', encoding="utf-8", newline='') as f:
lecture = csv.reader(f)
for ligne in lecture :
ages.append(ligne[1])
effectifs_femme.append(ligne[3])
effectifs_homme.append(ligne[2])
ages.pop(0)
effectifs_femme.pop(0)
effectifs_homme.pop(0)
ages = [int(age) for age in ages]
effectifs_femme = [int(effectif) for effectif in effectifs_femme]
effectifs_homme = [int(effectif) for effectif in effectifs_homme]
mineurs = [0, 0]
majeurs = [0, 0]
seniors = [0, 0]
for k in range(len(ages)):
if ages[k] < 18:
mineurs[0] = mineurs[0] + effectifs_homme[k]
mineurs[1] = mineurs[1] + effectifs_femme[k]
elif ages[k] < 60:
majeurs[0] = majeurs[0] + effectifs_homme[k]
majeurs[1] = majeurs[1] + effectifs_femme[k]
else:
seniors[0] = seniors[0] + effectifs_homme[k]
seniors[1] = seniors[1] + effectifs_femme[k]
##----- Tests et interaction -----##
print(mineurs)
print(majeurs)
print(seniors)