Optimisation de boucles en Python : list comprehension vs map()

Python, JavaScript, C, PHP, algorithmes, IDE
zed33
Messages : 790
Inscription : lun. oct. 16, 2023 7:24 pm

Optimisation de boucles en Python : list comprehension vs map()

Message par zed33 »

Salut à tous ! Je travaille sur un script qui traite des gros datasets. J’utilise des list comprehension mais un collègue m’a dit que map() serait plus performant. Des retours d’expérience ?
vincent92
Messages : 404
Inscription : mer. sept. 25, 2024 7:24 pm

Re: Optimisation de boucles en Python : list comprehension vs map()

Message par vincent92 »

Map() est effectivement plus rapide pour les très grandes listes, mais la différence est minime en dessous de 100k éléments. Perso, je préfère la lisibilité des list comprehension.
romain_du_44
Messages : 160
Inscription : jeu. oct. 02, 2025 7:24 pm

Re: Optimisation de boucles en Python : list comprehension vs map()

Message par romain_du_44 »

J’ai testé les deux sur un dataset de 500k lignes : map() gagne 15% en temps d’exécution. Par contre, avec NumPy, on fait encore mieux !
zed33
Messages : 790
Inscription : lun. oct. 16, 2023 7:24 pm

Re: Optimisation de boucles en Python : list comprehension vs map()

Message par zed33 »

Merci pour les tests ! @95, tu as utilisé numpy.array directement ou via une fonction custom ?
romain_du_44
Messages : 160
Inscription : jeu. oct. 02, 2025 7:24 pm

Re: Optimisation de boucles en Python : list comprehension vs map()

Message par romain_du_44 »

Directement en numpy.array + vectorisation. Gain de 40% par rapport à map(). Je te file mon snippet si tu veux.
Répondre