python';模块';对象没有属性';编译'; [root@proxy-001脚本]#python Python 2.6.6(r266:842921911年12月7日,20:48:22) [GCC 4.4.6 20110731(Red Hat 4.4.6-3)]关于linux2 有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。 >>>导入MySQLdb >>>从MySQLdb导入游标 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/usr/lib64/python2.6/site packages/MySQLdb/cursors.py”,第16行,在 插入值=重新编译(重新编译) AttributeError:“模块”对象没有“编译”属性
有什么想法吗 同样的错误:python';模块';对象没有属性';编译'; [root@proxy-001脚本]#python Python 2.6.6(r266:842921911年12月7日,20:48:22) [GCC 4.4.6 20110731(Red Hat 4.4.6-3)]关于linux2 有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。 >>>导入MySQLdb >>>从MySQLdb导入游标 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/usr/lib64/python2.6/site packages/MySQLdb/cursors.py”,第16行,在 插入值=重新编译(重新编译) AttributeError:“模块”对象没有“编译”属性,python,linux,centos,Python,Linux,Centos,有什么想法吗 同样的错误: [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
[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脚本]#python
Python 2.6.6(r266:842921911年12月7日,20:48:22)
[GCC 4.4.6 20110731(Red Hat 4.4.6-3)]关于linux2
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>进口稀土
>>>导入MySQLdb
>>>导入MySQLdb.cursors
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/lib64/python2.6/site packages/MySQLdb/cursors.py”,第16行,在
插入值=重新编译(重新编译)
AttributeError:“模块”对象没有“编译”属性
已编辑:/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py
增加:
重新打印
打印目录(re)
插入值=重新编译(重新编译)
[root@proxy-001脚本]#python
Python 2.6.6(r266:842921911年12月7日,20:48:22)
[GCC 4.4.6 20110731(Red Hat 4.4.6-3)]关于linux2
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>进口稀土
>>>导入MySQLdb
>>>导入MySQLdb.cursors
[“内置”、“文档”、“文件”、“名称”、“包”、“主”、“修改url”、“系统”]
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/lib64/python2.6/site packages/MySQLdb/cursors.py”,第18行,在
插入值=重新编译(重新编译)
AttributeError:“模块”对象没有“编译”属性
>>>
真奇怪。您的Python路径中是否有一个名为“re.py”的模块,它隐藏着“真正的”re模块
更新:好的,根据您的编辑,我现在确定您有一个re.py模块,它正在跟踪真实的模块,如果我正确读取路径,它就在您调用程序的目录中!您是否编写了一个具有“修改url”功能的re.py模块
无论如何,找到re.py——它可能在您的脚本目录中——并将其重命名为其他内容。我可以导入re,只有在调用MySQLdb.cursors时它才会出错。那么您能否在insert\u values=re.compile(rest)命令之前,将“print re”和“print dir(re)”行添加到cursors.py中?我认为它从某处获取了一个re.py。它似乎确实导入了一些东西,如果未导入
re
模块,您将得到一个不同的错误(NameError:name're'未定义
)。re.compile()。“print re”应该告诉我们它来自哪里。添加了什么?那么在命令行中键入re.compile()
会出现同样的错误吗?导入re
和sys
后,sys.modules
的输出是什么?您只需在键入python
的目录或PYTHONPATH
中的一个目录中输入re.py
。重命名它,所有操作都应该正确。
[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'
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'
>>>