Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/08/2008, à 05:58

figarojuju

[Résolu] [Python] Bug dans affichage du help('modules')

Bonjour,
je rencontre un bug dans python: lorsque je suis sur une console python et que je tape help('modules'), il ne me donne pas la liste des modules comme il le devrait mais des messages d'erreur...
Cela à commencé à buguer depuis que j'ai installé openGL. Je l'ai donc désinstallé, pour voir, mais rien n'y fait...

Savez-vous comment corriger ce bug?

Merci et bonne journée.

Dernière modification par figarojuju (Le 23/08/2008, à 11:48)


Ubuntu: Hardy Heron

Hors ligne

#2 Le 22/08/2008, à 17:34

PMdomine

Re : [Résolu] [Python] Bug dans affichage du help('modules')

Bonjour,

Essaye plutôt :

import monmodule
help(monmodule)

« Mais à quoi te sert Python ?
--- À tout ! »

Hors ligne

#3 Le 22/08/2008, à 21:42

figarojuju

Re : [Résolu] [Python] Bug dans affichage du help('modules')

Bonsoir,
merci de ta réponse, j'ai essayé, ça marche.
L'intérêt que je voyais avec la commande que j'effectuais, était de voir d'un coup tous les modules installés...
Saurais-tu comment faire pour que cette commande fonctionne à nouveau?
Bonne soirée


Ubuntu: Hardy Heron

Hors ligne

#4 Le 23/08/2008, à 08:52

aleph

Re : [Résolu] [Python] Bug dans affichage du help('modules')

Je ne vois pas les raisons pour lesquelles un help('modules') ne fonctionnerait pas. Le résultat d'un help('modules') sur ma plateforme est un peu long et je ne le donne pas ici.

Un help('modules') ne scrute pas les modules installés, mais les modules qui sont atteignables comme le spécifie le sys.path. Le sys.path peut être (et est bien souvent) différent pour chaque utilisateur d'un environnement Python quelle que soit la plateforme et ceci aussi pour les utilisateurs d'un même OS (OS X, Solaris, un Linux, ...).

(Il me semble que c'est un concept que beaucoup ont de la peine à saisir et qui explique accessoirement aussi pourquoi distribuer un/des script(s) Python sous forme de paquet deb n'est pas une bonne idée.)

Un import monmodule avant un help('monmodule') ne se justifie pas.

Petite illustration avec le module abc.py qui contient deux fonctions fa et fb. Pour cette démo, le module se situe dans c:\junk, mais il pourrait très bien se situer dans n'importe quel répertoire de n'importe quel  OS.

>>> 
>>> help('abc')
no Python documentation found for 'abc'

>>> sys.path.append('c:\\junk')
>>> help('abc')
Help on module abc:

NAME
    abc - Ce module contient les deux fonctions fa() et fb()

FILE
    c:\junk\abc.py

FUNCTIONS
    fa()
        fa() -> 999 (in all cases)
    
    fb()
        fb() -> "abcdef" (in all cases)


>>> help('abc.fa')
Help on function fa in abc:

abc.fa = fa()
    fa() -> 999 (in all cases)

>>> help('abc.fb')
Help on function fb in abc:

abc.fb = fb()
    fb() -> "abcdef" (in all cases)

>>> #ou bien
>>> abc
Traceback (most recent call last):
  File "<psi last command>", line 1, in <module>
NameError: name 'abc' is not defined
>>> import abc
>>> abc.__doc__
Ce module contient les deux fonctions fa() et fb()
>>> abc.fa.__doc__
fa() -> 999 (in all cases)
>>> abc.fb.__doc__
fb() -> "abcdef" (in all cases)
>>>

#5 Le 23/08/2008, à 10:24

figarojuju

Re : [Résolu] [Python] Bug dans affichage du help('modules')

Bonjour,
je crois que je n'ai pas été assez précis concernant mon bug:
Voici ce que j'obtiens:

 $ python
Python 2.5.2 (r252:60911, Jul 31 2008, 17:28:52) 
[GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

/usr/lib/python2.5/site-packages/twisted/words/im/__init__.py:8: UserWarning: twisted.im will be undergoing a rewrite at some point in the future.
  warnings.warn("twisted.im will be undergoing a rewrite at some point in the future.")
Data Dir: /usr/share/gnome-applets/invest-applet
/usr/lib/python2.5/pkgutil.py:110: DeprecationWarning: The wxPython compatibility package is no longer automatically generated or actively maintained.  Please switch to the wx package as soon as possible.
  __import__(name)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.5/site.py", line 342, in __call__
    return pydoc.help(*args, **kwds)
  File "/usr/lib/python2.5/pydoc.py", line 1646, in __call__
    self.help(request)
  File "/usr/lib/python2.5/pydoc.py", line 1683, in help
    elif request == 'modules': self.listmodules()
  File "/usr/lib/python2.5/pydoc.py", line 1804, in listmodules
    ModuleScanner().run(callback)
  File "/usr/lib/python2.5/pydoc.py", line 1855, in run
    for importer, modname, ispkg in pkgutil.walk_packages():
  File "/usr/lib/python2.5/pkgutil.py", line 110, in walk_packages
    __import__(name)
  File "/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wxPython/__init__.py", line 15, in <module>
    import _wx
  File "/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wxPython/_wx.py", line 8, in <module>
    from _misc import *
  File "/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wxPython/_misc.py", line 456, in <module>
    wxDateTime_GetNumberOfDaysinYear = wx._misc.DateTime_GetNumberOfDaysinYear
AttributeError: 'module' object has no attribute 'DateTime_GetNumberOfDaysinYear'
>>>

Qu'en pensez-vous?
Merci et bon Week end


Ubuntu: Hardy Heron

Hors ligne

#6 Le 23/08/2008, à 11:05

aleph

Re : [Résolu] [Python] Bug dans affichage du help('modules')

>figarojuju

Comme le traceback l'indique, le problème se situe au niveau du package (dans le sens Python et non deb) de wxPython.

Par hasard, j'ai amené, indirectement, la discussion sur la mailing list des développeurs wxPython hier. Il y a effectivement un problème au niveau de wx, résolu dans la prochaine version selon Robin.

Je te laisse lire: http://lists.wxwidgets.org/pipermail/wxpython-users/2008-August/079559.html et la courte discussion qui s'en suit.

#7 Le 23/08/2008, à 11:48

figarojuju

Re : [Résolu] [Python] Bug dans affichage du help('modules')

Merci Aleph,
très sympa de part d'avoir autant cherché...
Une boucle infinie alors ferait donc tout planter à partir du module wxPython.

Résolu à la prochaine update donc...
Bon Week end.


Ubuntu: Hardy Heron

Hors ligne