[root@proxy-001 scripts]# python
Python 2.6.6 (r266:84292, Dec 7 2011, 20:48:22)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>> from MySQLdb import cursors
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 16, in <module>
insert_values= re.compile(restr)
AttributeError: 'module' object has no attribute 'compile'
有什么想法吗?
同样的错误:
[root@proxy-001 scripts]# python
Python 2.6.6 (r266:84292, Dec 7 2011, 20:48:22)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> import MySQLdb
>>> import MySQLdb.cursors
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 16, in <module>
insert_values= re.compile(restr)
AttributeError: 'module' object has no attribute 'compile'
编辑:/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py 添加:
print re
print dir(re)
insert_values= re.compile(restr)
[root@proxy-001 scripts]# python
Python 2.6.6 (r266:84292, Dec 7 2011, 20:48:22)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> import MySQLdb
>>> import MySQLdb.cursors
<module 're' from 're.pyc'>
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'main', 'modify_url', 'sys']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 18, in <module>
insert_values= re.compile(restr)
AttributeError: 'module' object has no attribute 'compile'
>>>
最佳答案
这很奇怪。您的 Python 路径中是否有一个名为“re.py”的模块正在隐藏“真正的”re 模块?
更新:好的,根据你的编辑,我现在确定你有一个 re.py 模块,它正在遮蔽真实的模块,如果我正确读取路径,它就在你所在的目录中从调用程序!您是否编写了具有一个“modify_url”函数的 re.py 模块?
无论如何,找到 re.py —— 它可能在你的脚本目录中 —— 并将它重命名为其他名称。
关于python 'module' 对象没有属性 'compile',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9149876/