瓶子:无法导入路线

时间:2012-07-30 20:47:52

标签: virtualenv bottle python-3.2

我收到以下错误:

(virtualenv)[chirdeep@fedora-desktop ~]$ python programs/python/myrestapi.py 
Traceback (most recent call last):
 File "programs/python/myrestapi.py", line 2, in <module>
import bottle
 File "/home/chirdeep/programs/python/bottle.py", line 1, in <module>
 from bottle import route, run
 ImportError: cannot import name route

我有python 2.7.3和3.2.3。 (virtualenv)指向python3,我在这里安装了瓶子,并且它在site-packges下可用..

激活环境后,我可以在python控制台下导入瓶子。

(virtualenv)[chirdeep@fedora-desktop ~]$ python
Python 3.2.3 (default, Jul 26 2012, 22:03:19) 
[GCC 4.7.0 20120507 (Red Hat 4.7.0-5)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bottle
>>> 

任何帮助都会非常感激,让我发疯。

由于

2 个答案:

答案 0 :(得分:16)

您自己的Python文件名为bottle.py

File "/home/chirdeep/programs/python/bottle.py", line 1, in <module>

所以真实的 bottle.py会被你自己的文件所遮蔽。由于您自己的文件包含routerun,因此失败:

from bottle import route, run

重命名您自己的文件,可能是mybottle.py

答案 1 :(得分:2)

我猜这个问题与程序命名空间与瓶子的碰撞有关。即:Python正试图从/home/chirdeep/programs/python/bottle.py而不是站点包中的bottle.py导入路由。

尝试重命名程序文件。