Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

comments.html 3.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <div class="comment" typeof="schema:UserComments">
  2. <p class="comment-meta">
  3. <span class="comment-author" property="schema:creator">Tarek</span> le <span class="comment-date" property="schema:commentTime">26/10/2006</span> :
  4. </p>
  5. <div class="comment-content" property="schema:commentText">
  6. <p>Le même script sous Python 2.5 :<br />
  7. <br />
  8. tziade@dabox:~$ python test2.py<br />
  9. === map vs. list-comprehension ===<br />
  10. map without list-comprehension:<br />
  11. 707 pystones<br />
  12. map with list-comprehension:<br />
  13. 634 pystones<br />
  14. === filter vs. list-comprehension ===<br />
  15. filter without list-comprehension:<br />
  16. 687 pystones<br />
  17. filter with list-comprehension:<br />
  18. 634 pystones</p>
  19. </div>
  20. </div>
  21. <div class="comment" typeof="schema:UserComments">
  22. <p class="comment-meta">
  23. <span class="comment-author" property="schema:creator">JS</span> le <span class="comment-date" property="schema:commentTime">26/10/2006</span> :
  24. </p>
  25. <div class="comment-content" property="schema:commentText">
  26. <p>Bon, j'ai rien compris au map et list-comprehension, faudrait que je regarde ca de plus près...<br />
  27. <br />
  28. Par contre, t'es sur #python-fr ???</p>
  29. </div>
  30. </div>
  31. <div class="comment" typeof="schema:UserComments">
  32. <p class="comment-meta">
  33. <span class="comment-author" property="schema:creator">sebsauvage</span> le <span class="comment-date" property="schema:commentTime">01/12/2006</span> :
  34. </p>
  35. <div class="comment-content" property="schema:commentText">
  36. <p>Hello !<br />
  37. <br />
  38. Tu as oublié qu'avec de si petites données de test, l'overhead d'appel aux fonction devient non négligeable.<br />
  39. <br />
  40. J'ai refait les tests avec de plus grands ensembles de données et je maintien ce que j'ai dit:<br />
  41. map et filter sont plus rapide que list comprehension (sauf quand on combine map et filter).<br />
  42. <br />
  43. Voici le fichier de test:<br />
  44. <a href="http://sebsauvage.net/python/snyppets/maptest.py" title="http://sebsauvage.net/python/snyppets/maptest.py" rel="nofollow">sebsauvage.net/python/sny...</a><br />
  45. <br />
  46. Et les résultats:<br />
  47. ===== map_without_list_comprehension =====<br />
  48. 105 function calls in 0.231 CPU seconds<br />
  49. ===== map_with_list_comprehension =====<br />
  50. 1000005 function calls in 6.941 CPU seconds<br />
  51. <br />
  52. ===== filter_without_list_comprehension =====<br />
  53. 105 function calls in 0.074 CPU seconds<br />
  54. ===== filter_with_list_comprehension =====<br />
  55. 1000005 function calls in 6.889 CPU seconds<br />
  56. <br />
  57. C'est sans appel: map et filter sont nettement plus rapides.<br />
  58. (Dans notre exemple: d'un facteur x30 pour map, et d'un facteur x93 pour filter)<br />
  59. <br />
  60. <br />
  61. ...sauf quand on doit les combiner:<br />
  62. ===== mapfilter_without_list_comprehension =====<br />
  63. 2042605 function calls in 13.935 CPU seconds<br />
  64. ===== mapfilter_with_list_comprehension =====<br />
  65. 521205 function calls in 3.795 CPU seconds<br />
  66. <br />
  67. Là la list comprehension est plus rapide.<br />
  68. <br />
  69. <br />
  70. Donc je ne me suis pas trompé, mais c'est à mitiger. :-)<br />
  71. Il vaut mieux profiler le code.<br />
  72. </p>
  73. </div>
  74. </div>
  75. <div class="comment" typeof="schema:UserComments">
  76. <p class="comment-meta">
  77. <span class="comment-author" property="schema:creator">xfeeder</span> le <span class="comment-date" property="schema:commentTime">29/06/2010</span> :
  78. </p>
  79. <div class="comment-content" property="schema:commentText">
  80. <p>les list-comprehensions sont toujours plus rapides que map ou filter avec Python 2.4.</p>
  81. </div>
  82. </div>