2010-02-13 4 views
3

J'ai ce problème. Une idée?AttributeError: l'objet 'module' n'a pas d'attribut 'imprimable'

from OpenGL.raw.GLUT import * 
     File "/usr/lib/python2.6/site-packages/OpenGL/raw/GLUT/__init__.py", line 6, in <module> 
     from OpenGL.raw.GLUT.constants import * 
     File "/usr/lib/python2.6/site-packages/OpenGL/raw/GLUT/constants.py", line 7, in <module> 
     from OpenGL import platform, arrays 
     File "/usr/lib/python2.6/site-packages/OpenGL/platform/__init__.py", line 36, in <module> 
     _load() 
     File "/usr/lib/python2.6/site-packages/OpenGL/platform/__init__.py", line 27, in _load 
     plugin_class = plugin.load() 
     File "/usr/lib/python2.6/site-packages/OpenGL/plugins.py", line 14, in load 
     return importByName(self.import_path) 
     File "/usr/lib/python2.6/site-packages/OpenGL/plugins.py", line 28, in importByName 
     module = __import__(".".join(moduleName), {}, {}, moduleName) 
     File "/usr/lib/python2.6/site-packages/OpenGL/platform/glx.py", line 3, in <module> 
     from OpenGL.platform import baseplatform, ctypesloader 
     File "/usr/lib/python2.6/site-packages/OpenGL/platform/baseplatform.py", line 4, in <module> 
     from OpenGL.platform import ctypesloader 
     File "/usr/lib/python2.6/site-packages/OpenGL/platform/ctypesloader.py", line 6, in <module> 
     import ctypes, logging, os 
     File "/usr/lib/python2.6/logging/__init__.py", line 31, in <module> 
     import sys, os, types, time, string, cStringIO, traceback 
     File "string.py", line 3, in <module> 
     chars=set(string.printable), 
    AttributeError: 'module' object has no attribute 'printable' 

Répondre

4

Vous avez un fichier appelé string.py dans le répertoire courant. Cela interfère avec le module de bibliothèque standard du même nom. Renommez le fichier .py et supprimez le fichier string.pyc qui a été créé.

+0

Merci! J'ai lu à propos de "AttributeError: l'objet 'module' n'a pas d'attribut". J'ai oublié ce script. Peut-être qu'à l'avenir, python saura ce qu'il en est des bibliothèques. –

+0

@ThomasWouters J'ai le même problème. Mais ce que j'ai est 'String.py', qui est en majuscule. Je pense que c'est différent de "string.py" et shoundn't provoquer l'erreur. Mais ça le fait. J'utilise 'Python 2.7.9'. Pourriez-vous jeter de la lumière? – smwikipedia

+0

J'ai trouvé la cause du problème et je l'ai affichée ci-dessous. – smwikipedia

0

J'ai rencontré exactement le même problème. Mais dans un contexte différent. Je configure une machine virtuelle Ubuntu avec VirtualBox. J'écris des choses python sur un dossier partagé entre la machine virtuelle et l'hôte Windows. (Le dossier partagé est une caractéristique de VirtualBox)

La raison de mon sort est:

Windows file names are NOT case sensitive. And I happened to have a String.py which are converted into string.pyc and stored in my Windows shared folder. So it interferes with the Python built-in “string.py” module.

Solution:

Copy the whole python code into the VM and just work there.

Questions connexes