Pour les utilisateurs de Windows (j'utilise Python 2.7.2, Win7x64, package d'installation par défaut), l'appel à __file__
va s'éteindre comme l'a noté @zjm1126, je soupçonne que le problème est que itertools
est une fonction intégrée au paquetage Windows. Si vous aviez choisi de dire, exceptions
? Vous obtiendriez le même comportement sur une autre plateforme (par exemple Python 2.6.1 sur mon macbook) - il se trouve que Windows a un peu plus d'éléments intégrés comme itertools.
Il ne s'agit pas d'une réponse à proprement parler, mais vous pouvez analyser les éléments suivants sys.modules
ce qui permet de savoir d'où il vient :
>>> import sys
>>> sys.modules['itertools']
<module 'itertools' (built-in)>
qui indique que itertools est intégré à votre exécutable python.
De même, la réponse imp.find_module fournit les mêmes informations : le tuple de retour bizarre est conforme à la spécification (voir : http://docs.python.org/2/library/imp.html#imp.find_module ) et vous indique que le module est de type 6, qui est l'énumération de imp.C_BUILTIN