Besoin d'aide en PYTHON

Nlncf
2022-06-03 22:50:54

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Nlncf
2022-06-03 22:51:21

Le 03 juin 2022 à 22:49:58 :
Hésite pas à utiliser des print de partout pendant tes débug

La typiquement si tu avait fait un print(i) dans ta boucle tu aurait vu que ça donnait les nombre et pas les lettres du mot

c pas très opti non?

OuestBrick
2022-06-03 22:51:54

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Tu connais la formule de la moyenne ?

Nlncf
2022-06-03 22:52:41

Le 03 juin 2022 à 22:51:54 :

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Tu connais la formule de la moyenne ?

avec les coefs : c'est la somme des produits des notes avec leurs coefs respectifs divisés par le nombre de coef total

OuestBrick
2022-06-03 22:52:49

Le 03 juin 2022 à 22:51:21 :

Le 03 juin 2022 à 22:49:58 :
Hésite pas à utiliser des print de partout pendant tes débug

La typiquement si tu avait fait un print(i) dans ta boucle tu aurait vu que ça donnait les nombre et pas les lettres du mot

c pas très opti non?

Quand on débug, tu s'en fout de l'optimisation :hap:
C'est pour le code final que l'optimisation compte :ok:

OuestBrick
2022-06-03 22:54:28

Le 03 juin 2022 à 22:52:41 :

Le 03 juin 2022 à 22:51:54 :

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Tu connais la formule de la moyenne ?

avec les coefs : c'est la somme des produits des notes avec leurs coefs respectifs divisés par '''le nombre la somme de coef total

Donc normalement il te faudrait une liste avec les notes et une autre liste avec les coeffs.
Ta fonction devrait donc avoir 2 paramètres

Nlncf
2022-06-03 22:55:03

Le 03 juin 2022 à 22:54:28 :

Le 03 juin 2022 à 22:52:41 :

Le 03 juin 2022 à 22:51:54 :

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Tu connais la formule de la moyenne ?

avec les coefs : c'est la somme des produits des notes avec leurs coefs respectifs divisés par '''le nombre la somme de coef total

Donc normalement il te faudrait une liste avec les notes et une autre liste avec les coeffs.
Ta fonction devrait donc avoir 2 paramètres

les 2 parametres, note et coef?

Charlies_lost
2022-06-03 22:56:06

Le 03 juin 2022 à 22:50:02 :

Le 03 juin 2022 à 22:49:00 Charlies_lost a écrit :

Le 03 juin 2022 à 22:45:52 :
une fonction existe déjà mais sinon
def recherche(caractere, mot):
return len([c for c in mot if c == caractere])

Tu crées un tableau intermédiaire qui est inutile.

len() ne peut pas renvoyer le nombre d'éléments d'un generator :(

Oui, mon propos étant que len n'est pas approprié.
Une autre solution, je pense plus pythonesque, si on ne veut pas sommer des booléens :
sum(1 for l in word if l == l2)

Junto4242
2022-06-03 22:57:26

Le 03 juin 2022 à 22:56:06 :

Le 03 juin 2022 à 22:50:02 :

Le 03 juin 2022 à 22:49:00 Charlies_lost a écrit :

Le 03 juin 2022 à 22:45:52 :
une fonction existe déjà mais sinon
def recherche(caractere, mot):
return len([c for c in mot if c == caractere])

Tu crées un tableau intermédiaire qui est inutile.

len() ne peut pas renvoyer le nombre d'éléments d'un generator :(

Oui, mon propos étant que len n'est pas approprié.
Une autre solution, je pense plus pythonesque, si on ne veut pas sommer des booléens :
sum(1 for l in word if l == l2)

La solution pythonnesque c'est d'utiliser le builtin Counter

OuestBrick
2022-06-03 22:58:15

Le 03 juin 2022 à 22:55:03 :

Le 03 juin 2022 à 22:54:28 :

Le 03 juin 2022 à 22:52:41 :

Le 03 juin 2022 à 22:51:54 :

Le 03 juin 2022 à 22:48:13 :
Bon mtn je dois créer une fonction qui calcule la moyenne avec des notes qui ont des coefs

bon je pense que c'est pas ça mais :

def moyenne(liste):
coef = len(liste)
m = []
m = sum(liste[0] * liste[1])
m = m/coef
return m

(ne me donnez pas la réponse mais juste de l'aide svp :hap:)

Tu connais la formule de la moyenne ?

avec les coefs : c'est la somme des produits des notes avec leurs coefs respectifs divisés par '''le nombre la somme de coef total

Donc normalement il te faudrait une liste avec les notes et une autre liste avec les coeffs.
Ta fonction devrait donc avoir 2 paramètres

les 2 parametres, note et coef?

effectivement. Note et Coeff étant des listes.
Une fois que tu as ca, tu as juste à appliquer la formule.
Par du principe que les notes et coeff sont rangés respectivement dans chacune des listes.
Par exemple si la première note c'est celle de math et la derniere celle de francais, alors le premier coeff sera celui de math et le dernier celui de francais.

OuestBrick
2022-06-03 22:59:16

Le 03 juin 2022 à 22:57:26 :

Le 03 juin 2022 à 22:56:06 :

Le 03 juin 2022 à 22:50:02 :

Le 03 juin 2022 à 22:49:00 Charlies_lost a écrit :

Le 03 juin 2022 à 22:45:52 :
une fonction existe déjà mais sinon
def recherche(caractere, mot):
return len([c for c in mot if c == caractere])

Tu crées un tableau intermédiaire qui est inutile.

len() ne peut pas renvoyer le nombre d'éléments d'un generator :(

Oui, mon propos étant que len n'est pas approprié.
Une autre solution, je pense plus pythonesque, si on ne veut pas sommer des booléens :
sum(1 for l in word if l == l2)

La solution pythonnesque c'est d'utiliser le builtin Counter

Si l'op est entrain d'apprendre le Pyhton, c'est mieux pour lui d'écrire ses algos à partir de zéro :hap:

Nlncf
2022-06-03 23:00:03

j'ai pas encore fini mais :

def moyenne(note, coef):
compte = 0
somme = 0
note = []
coef = []
for i in note :
for i in coef :
compte = sum(note*coef)
somme = sum(coef)

?? :(

OuestBrick
2022-06-03 23:02:28

Le 03 juin 2022 à 23:00:03 :
j'ai pas encore fini mais :

def moyenne(note, coef):
compte = 0
somme = 0
note = []
coef = []
for i in note :
for i in coef :
compte = sum(note*coef)
somme = sum(coef)

?? :(

Bon la ça ne va pas vraiment .
Tu as compris la notion de paramètre en python ?
ps : Oublie pour l'instant que la fonction sum existe :hap:.

Nlncf
2022-06-03 23:06:21

Le 03 juin 2022 à 23:02:28 :

Le 03 juin 2022 à 23:00:03 :
j'ai pas encore fini mais :

def moyenne(note, coef):
compte = 0
somme = 0
note = []
coef = []
for i in note :
for i in coef :
compte = sum(note*coef)
somme = sum(coef)

?? :(

Bon la ça ne va pas vraiment .
Tu as compris la notion de paramètre en python ?
ps : Oublie pour l'instant que la fonction sum existe :hap:.

bah les paramètres c'est les variables de la fonction quoi

Charlies_lost
2022-06-03 23:06:57

Le 03 juin 2022 à 22:57:26 :

Le 03 juin 2022 à 22:56:06 :

Le 03 juin 2022 à 22:50:02 :

Le 03 juin 2022 à 22:49:00 Charlies_lost a écrit :

Le 03 juin 2022 à 22:45:52 :
une fonction existe déjà mais sinon
def recherche(caractere, mot):
return len([c for c in mot if c == caractere])

Tu crées un tableau intermédiaire qui est inutile.

len() ne peut pas renvoyer le nombre d'éléments d'un generator :(

Oui, mon propos étant que len n'est pas approprié.
Une autre solution, je pense plus pythonesque, si on ne veut pas sommer des booléens :
sum(1 for l in word if l == l2)

La solution pythonnesque c'est d'utiliser le builtin Counter

Sauf que t'es en 0(n) space.

OuestBrick
2022-06-03 23:14:49

Le 03 juin 2022 à 23:06:21 :

Le 03 juin 2022 à 23:02:28 :

Le 03 juin 2022 à 23:00:03 :
j'ai pas encore fini mais :

def moyenne(note, coef):
compte = 0
somme = 0
note = []
coef = []
for i in note :
for i in coef :
compte = sum(note*coef)
somme = sum(coef)

?? :(

Bon la ça ne va pas vraiment .
Tu as compris la notion de paramètre en python ?
ps : Oublie pour l'instant que la fonction sum existe :hap:.

bah les paramètres c'est les variables de la fonction quoi

Oui c'est ça. Sauf que quand tu fais
note = []
coef = []

tu réinitialises tes variables :hap:. Donc tu dois déja enlever ces 2 lignes.

Ensuite,
for i in note :
for i in coef :
compte = sum(note*coef)

Cette partie la ca ne va pas non plus. Arrete d'utiliser sum pour l'instant'
Essaye d'appliquer ta formule étape par etape.

OuestBrick
2022-06-03 23:16:22

Par exemple si j'ai une liste Depense, et que je veux faire la somme de mes dépense, je peux faire :
somme = 0
for i in Depense:
somme+= i
return somme

Nlncf
2022-06-03 23:19:09

somme = 0
for i in note :
for i in coef :
somme = note*coef

:(

OuestBrick
2022-06-03 23:20:52

Le 03 juin 2022 à 23:19:09 :
somme = 0
for i in note :
for i in coef :
somme = note*coef

:(

Non plus,
Tu veux que je te file la soluce expliquéé en détaille ?
Je pense que tu as du ma avec le parcours des listes :hap:.Par exemple là, tu utilises i pour note et coeff :hap:
edit: Cependant tu y est presque, c'est plutoun += à la place du =.

Nlncf
2022-06-03 23:22:53

Le 03 juin 2022 à 23:20:52 :

Le 03 juin 2022 à 23:19:09 :
somme = 0
for i in note :
for i in coef :
somme = note*coef

:(

Non plus,
Tu veux que je te file la soluce expliquéé en détaille ?
Je pense que tu as du ma avec le parcours des listes :hap:.Par exemple là, tu utilises i pour note et coeff :hap:
edit: Cependant tu y est presque, c'est plutoun += à la place du =.

vasi dit

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.