Bonjour,
je bloque sur une bêtise, qui révèle surement une incompréhension...
Je veux tester qu'une liste est triée, dans l'ordre croissant
après l'avoir créée :, j'aurais bien vu quelquechose du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part x1 = pylab.arange(0,1,0.1)mais quand je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part if(sorted(x1) != x1): ...
j'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 print sorted(x1) print x1 print sorted(x1) != x1
Et alors, pourquoi la fonction sorted() se permet-elle de modifier le contenu de ma liste ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 [0.0, 0.10000000000000001, 0.20000000000000001, 0.30000000000000004, 0.40000000000000002, 0.5, 0.60000000000000009, 0.70000000000000007, 0.80000000000000004, 0.90000000000000002] [ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9] [False False False False False False False False False False]
Aussi, pourquoi 0.10000000000000001 == 0.1 ?
ducoup,semble faire le boulot, mais je doute!
Code : Sélectionner tout - Visualiser dans une fenêtre à part if(all(sorted(x1) != x1)):...
merci pour vos eclaircicements !
Partager