Bonjour,
j'ai une liste qui contienne des nombre réelle négative, je veut extraire le nombre maximum de cette liste mais ça marche plus avec moi
voici mon code
#! /usr/bin/ python
import string
import os
import sys
c=['-6.86842', '-7.63321', '-10.0671', '-10.6517', '-8.24292', '-9.05002', '-5.50476', '-9.94487', '-11.1206', '-8.73639', '-10.324', '-7.91287', '-10.2546', '-7.49278', '-7.30659', '-7.9931', '-6.8119', '-8.62453', '-10.9082', '-10.9082']
print max(c)
normalement le maximum de cette liste est : -5.50476
mais mon programme m'affiche : -9.94487
et comment je peut avoir leur indice sur la liste
je suis pas ou est le problème, si vous pouvez m'aidez s'il vous plais
merci pour votre collaboration
ça me donne une bonne résultat;
merci
Comme jordane l'a souligné, ce sont des chaines de caractères et non des nombres, leur ordre de grandeurs est donc évalué différemment.
Il vous faut convertir les éléments en nombres d'abord.
Voici comment faire en utilisant "list comprehension"
mais comment afficher l'indice de ce nombre maximum
Cette méthode est lente car on parcoure 2 fois la liste (avec la fonction max et la méthode list.index)
Pour faire plus rapide, écrivons une fonction similaire à 'max' mais qui retroune l'index plutôt que la valeur !
Voilà, cette fonction retourne l'indice recherché en une seule boucle !
maintenant mon problème est résolue
merci