Une question complète de Newbie: Le code est destiné à trouver la chaîne la plus longue dans une liste et à l'afficher. Cela ne fonctionne pas lorsque je l'exécute (en tant que fichier, ou directement dans la coquille). Je continue à obtenir un message d'erreur que le nom de la fonction n'est pas reconnu. Votre aide et vos conseils seraient hautement appréciés.
Le résultat correct est affiché avec la commande d'impression, mais lorsque j'essaie d'exécuter le fichier complet, je continue à obtenir l'erreur mentionnée ci-dessus. P>
SyntaxError: invalid syntax
>>> mylist = ["111", "44", "baking", "dot"]
>>> list1 = max(["111", "44", "baking", "dot"], key=len)
>>> longest(list1);
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'longest' is not defined
>>> print(list1)
baking
4 Réponses :
La fonction ne fait rien dans votre code.
Aurait pu raccourcir le ci-dessous.
max_value = max(["111", "44", "baking", "dot"], key=len) print(max_value)
Ce n'est pas une solution à votre problème où le plus long code> est introuvable, mais une implémentation de travail de votre code. def longest(mylist):
return max(mylist, key=len)
list1 = ["111", "44", "baking", "dot"]
print(longest(list1))
Votre problème est dans votre fonction.
Vous recevez un argument dans votre fonction et vous remplacez cet argument à la ligne 2.
Ici ce que votre fonction doit ressembler à puis après avoir appelé votre fonction avec votre argument p> plus dans votre coquille Vous n'avez pas défini votre fonction afin que l'interprète ne le sait pas p> p>
oublié l'instruction code> retour code>
Votre code n'est pas écrit correctement, vous devriez passer par des tutoriels Python pour apprendre les bases. Il y a beaucoup de tutoriels disponibles sur Internet.
Tutoriel Python sur TutorialSpoint p>
maintenant , la réponse à votre question est la suivante: p>
Dans la coquille, vous semblez avoir omis la ligne où vous définissez la fonction.
Vous n'avez pas besoin de fonctionner code> code> séparément - juste
len (list1) code> feraEssayez-vous d'exécuter
Python [nom de fichier] .py code> de la coquille Python? Vous devez utiliser la coquille de votre système d'exploitation.@Mortz:
len (list1) code> fera différentes choses. Mais la fonctionla plus longue code> ne fait rien pour le moment, c'est vrai.@Matthias - Oui, mal interprété la question comme étant la longueur de la plus longue chaîne ...
Merci à tous pour vos réponses et suggestions utiles. Il semble que je suis plus désemparé que je ne le pensais. Il est évident que j'ai besoin de plus d'informations avant de vous déranger à nouveau. Merci.