Problème avec mon code python concernant les dictionnaires

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

3 réponses

  1. 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
    1. 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
      1. 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
        1. Contributeur

          bonjour,

          en effet:

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