Problème avec mon code python concernant les dictionnaires

camille03 -  
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

j'ai écrit ce code en python et je ne comprends pas l'erreur. Quelqu'un pourrait m'expliquer ?

merci bcp :)

def moyenne(note):
    somme = 0
    for i in range(len(note)):
        somme = somme + note.values()
    moyenne = somme / len(note)
    return moyenne


print(moyenne({"camille": 50, "jean": 45}))


Macintosh / Safari 15.6.1

A voir également:

3 réponses

PierrotLeFou
 

note.values() est une liste (justement celle des notes)
On ne peut pas ajouter une liste à un nombre.
C'est ce que tu devrait mettre sur ta ligne for

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

bonjour,

en effet:

    for i in note.values():
        somme = somme + i
0
sebastiane
 

bonsoir moi je pense également que tu devrais fais comme ceci:

def moyenne(note):
	# print(note)
	somme = 0
	for i in note.values():
		somme = somme + i
	moyenne = somme / len(note)
	return moyenne


print(moyenne({"camille": 50, "jean": 45}))
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 

ou alors comme ça:

def moyenne(notes):
    somme = 0
    for note in notes.values(): somme += note
    moyenne = somme / len(notes)
    return moyenne

print(moyenne({"camille": 50, "jean": 45}))
0