2013-06-08 3 views
0

enter image description here Voyez ce que je veux dire? Au début, il a montré seulement RB et absolute_import comme choix. J'ai quand même pu importer Gtk. Après cela, il a montré quelques options supplémentaires. Still n'est pas une liste complète de modules. Si j'importe un autre module (que je connais dans les docs), il apparaît dans la liste.comportement étrange complet du module étrange dans IPython

(j'ai posté un problème similaire auparavant, mais je ne pouvais l'expliquer suffisamment bien donc je l'afficher à nouveau avec des détails mieux)

+0

vous devriez ajouter un lien à votre question connexe. – Matt

Répondre

1

Autocompletion essayer de déterminer la valeur possible de ce que vous demandez . gi.repository est probablement en train de définir des choses au moment de l'importation, donc vous ne pouvez pas tout faire correctement avant de l'importer.

Comme si vous écrasiez la méthode __getattr__ d'un objet, vous pourriez le faire répondre à une quantité arbitraire de clé sans pouvoir les lister. Pour savoir la raison exacte, vous devriez plonger dans le code de gi.repository (PyGI lui-même semble obsolète depuis 3 ans, remplacé par pygobject), qui d'une lecture rapide est une liaison complètement dynamique de GObject qui se construit vraiment au moment de l'importation en inspectant Gobject.

Donc je ne serais pas surpris qu'un tel module ait un comportement bizarre à la fin de la tabulation.

+0

Donne du sens maintenant. Donc, en utilisant un IDE avec des projets PyGTK doit être très difficile hein? Puisque l'achèvement du code ne fonctionnerait pas correctement, cela donnerait de fausses indications sur le fait que les modules/classes n'existent pas. Bien sûr, le code fonctionnerait, mais l'éditer serait pénible. – user1265125