AttributeError:'module'对象没有'printable'属性
我遇到了这个问题。
有没有什么想法可以帮我解决?
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'
2 个回答
0
我遇到了完全一样的问题,不过是在不同的情况下。
我在 VirtualBox
上设置了一个 Ubuntu 虚拟机。我在一个虚拟机和 Windows 主机之间共享的文件夹里写了一些 Python 代码。(这个共享文件夹是 VirtualBox 的一个功能)
我遇到麻烦的原因是:
Windows 的文件名不区分大小写。而我恰好有一个叫
String.py
的文件,它被转换成了string.pyc
,并且存储在我的 Windows 共享文件夹里。这就和 Python 内置的 “string.py” 模块冲突了。
解决办法:
把整个 Python 代码复制到虚拟机里,然后就在那儿工作。
4
你在当前文件夹里有一个叫做 string.py
的文件。这个文件和标准库里同名的模块发生了冲突。你需要把这个 .py 文件改个名字,然后把生成的 string.pyc
文件删掉。