max liste sur Python

Abcdefghijklm

max liste sur Python

Message par Abcdefghijklm » 17 déc. 2015 19:31

Bonjour, je dois faire un petit exercice sur python et mon but est de créer la foncton maxliste.
J'ai écrit cela

def maxliste(lis):
n=len(lis)
a=lis(0)
b=0
for index in range(1,n):
if a<lis(index):
a=lis(index)
b=index
return(a,b)

cependant lorsque je rentre une liste
par exemple:
maxliste([1,2,3,4,5])

J'obtiens ce message d'erreur :
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 3, in maxliste
TypeError: 'list' object is not callable
>>>

Je ne parviens pas à trouver où est mon erreur

Messages : 13

Inscription : 27 févr. 2013 16:45

Profil de l'utilisateur : Élève de lycée

Re: max liste sur Python

Message par loupi » 17 déc. 2015 20:09

La syntaxe est liste pas liste(i), tout simplement.

Abcdefghijklm

Re: max liste sur Python

Message par Abcdefghijklm » 17 déc. 2015 21:32

Ah mais oui, je suis bête !
Du coup, que designe liste(i)?

Arky

Re: max liste sur Python

Message par Arky » 17 déc. 2015 23:27

Que t'essayes d'appeler liste (de type list) avec l'argument i.
D'où la réponse : TypeError: 'list' object is not callable.

Messages : 9679

Inscription : 30 juil. 2008 16:59

Profil de l'utilisateur : Élève de lycée

Re: max liste sur Python

Message par fakbill » 18 déc. 2015 14:59

Abcdefghijklm :
tu devrais pouvoir trouver le problème tout seul.
Je m'explique:
Python te dit qu'il y a une erreur là "File "<stdin>", line 3, in maxliste"
C'est donc que a=lis(0)
Que faire? REDUIRE LE PROBLEME a UN PROBLEME plus SIMPLE...comme toujours quand on débug.
Il n'aime pas lis(0)? Ok ok...mais c'est dans une fonction donc c'est un peu compliqué...donc on va tester sur une liste simple en dehors d'une fonction...et la PAF tu vois que ca ne marche pas non plus donc tu vas relire ton cours/google.
Toujours penser comme ca quand on debug.

ps : lis est un très mauvais nom de variable pour une list..c'est trop proche de list et surtout ca ne veut rien dire.
MyList est par exemple mieux.
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.

Répondre