##Exercice 1

#Dictionnaire vs listes
L = []
L.append("chien")
print(L)

d = {}
d["cle"] = "chien"
print(d)


##Exercice 3

D = {"Alan":7, "Bob":3, "Ben":5, "Joe":2, "Zoe":8}

##Exercice 3.3
def somme(d) :
    s = 0
    for cle in d.keys() :
        valeur = d[cle]
        s += valeur
    return s

print("Somme\n",somme(D))

##Exercice 3.4
def moy(d):
    s = somme(d)
    return s/len(d)
print("Moyenne\n",moy(D))


##Exercice 3.5
def argmin(d):

    note_min = float("inf")

    for prenom in d.keys() :

        note = d[prenom]
        if note < note_min :
            note_min = min
            prenom_min = prenom

    return prenom_min

##Exercice 3.6
def carres(d):
    e = {}
    for cle in d.keys():
        e[cle] = d[cle]**2


    return e

print("Carrés\n",carres(D))

##Exercice 3.7
def dicocon(d, o):

    e = {}
    for cle in d.keys():
        e[cle] = o

    return e

print("Dicocon\n",dicocon(D,0))

##Exercice 3.9
def ajout(d,e):

    for cle in e :
        if cle  in d :
            d[cle] += e[cle]
        else :
            d[cle] = e[cle]

E = {"Alan":5, "Malo":4, "Joe":8, "Nina":6}

print("Ajout\n",D)


##Exercice 4

f = open("notes.txt", "r")


p = [] #Liste des prénoms
m = [] #Liste des notes

for ligne in f :
    li = ligne.strip("\n")

    L = li.split(",")

    prenom, n1, n2, n3, n4 = L

    moyenne = (float(n1)+float(n2)+float(n3)+float(n4))/4

    p.append(prenom)
    m.append(moyenne)
f.close()

dico = {}
for i in range(len(p)):
    dico[p[i]] = m[i]

print("Moyennes\n",dico)


def comptage(l):
    dico = {}

    for x in l :
        #Si la clé n'est pas présente on l'ajoute
        if x not in dico :
            dico[x] = 1
        #Si elle est présente, on compte un item supplémentaire
        else :
            dico[x] += 1
    return dico

L = ["chien","chien","chat","chien"]

print("Comptage\n",comptage(L))


















