Dans le cadre d'un de mes projets personnels, j'ai besoin de tester les performances de différentes implémentations de mon code en Python. Je prévois que ce soit quelque chose que je fais beaucoup, et je veux essayer de rendre le code que j'écris pour servir cet objectif aussi facile à mettre à jour et à modifier que possible.Gestion du code d'installation avec TimeIt
Il est encore à ses débuts au moment, mais je l'ai pris à l'aide de chaînes pour gérer la configuration commune ou un code de test, par exemple:
naiveSetup = 'from PerformanceTests.Vectors import NaiveVector\n' \
+ 'left = NaiveVector([1,0,0])\n' \
+ 'right = NaiveVector([0,1,0])'
Cela me permet de n'écrire une fois le code, au frais de rendre plus difficile à lire et maladroit à mettre à jour.
Y a-t-il un meilleur moyen?
cela n'a absolument rien à voir avec la question posée. – SilentGhost
Il s'agit d'une approche novatrice, mais je ne sais pas pourquoi vous effectueriez le profilage de cette façon lorsque vous n'avez pas 1, mais 3 (au dernier compte) profileurs inclus avec Python: cProfile, profile et hotshot. Voir http://docs.python.org/library/profile.html#instant-user-s-manual –
@SilentGhost: L'OP a dit "J'ai besoin de tester les performances de différentes implémentations". –