ImportError: нет модуля с именем bottle - PullRequest
10 голосов
/ 03 февраля 2012
$ sudo pip install bottle 
Downloading/unpacking bottle
  Downloading bottle-0.10.7.tar.gz (55Kb): 55Kb downloaded
  Running setup.py egg_info for package bottle
Installing collected packages: bottle
  Found existing installation: bottle 0.10.7
    Uninstalling bottle:
      Successfully uninstalled bottle
  Running setup.py install for bottle
    changing mode of build/scripts-2.6/bottle.py from 640 to 755
    changing mode of /usr/local/bin/bottle.py to 755
Successfully installed bottle

>>> help('modules')
blahblah
bottle
blahblah

$ ls /usr/local/lib/python2.6/dist-packages/
bottle-0.10.7.egg-info  bottle.py  bottle.pyc

но

$ python
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39) 
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bottle
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named bottle

wtf ???Ubuntu 10.10

РЕШЕНИЕ: # chmod -R 775 /usr/local/lib/python2.6/dist-packages/ мне помогает.Спасибо за все.

Ответы [ 5 ]

2 голосов
/ 21 мая 2012

В итоге у меня получилось:

chmod -R 775 /usr/local/lib/python2.6/dist-packages/ 
2 голосов
/ 03 февраля 2012

Рекомендуется использовать virtualenv с python в целом, но я бы сказал, особенно с веб-разработкой.

Что происходит, когда вы используете virtualenv?

$ sudo pip install virtualenv virtualenvwrapper
$ sudo cat >> ~/.bashrc << EOF
# virtualenvwrapper setup
export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages --python=python2.6'
source /usr/local/bin/virtualenvwrapper.sh
EOF
$ source ~/.bashrc
$ mkvirtualenv test
$ pip install bottle
$ python
>>> import bottle

Потому что яполучить это:

$ python 
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bottle
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named bottle
>>> 

$ mkvirtualenv test
Running virtualenv with interpreter /usr/bin/python2.6
New python executable in test/bin/python2.6
Also creating executable in test/bin/python
Please make sure you remove any previous custom paths from your /home/hughdbrown/.pydistutils.cfg file.
Installing setuptools.............................done.
Installing pip...............done.
virtualenvwrapper.user_scripts creating /home/hughdbrown/.virtualenvs/test/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/hughdbrown/.virtualenvs/test/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/hughdbrown/.virtualenvs/test/bin/preactivate
virtualenvwrapper.user_scripts creating /home/hughdbrown/.virtualenvs/test/bin/postactivate
virtualenvwrapper.user_scripts creating /home/hughdbrown/.virtualenvs/test/bin/get_env_details

$ pip install bottle
Downloading/unpacking bottle
  Downloading bottle-0.10.7.tar.gz (55Kb): 55Kb downloaded
  Running setup.py egg_info for package bottle
Installing collected packages: bottle
  Running setup.py install for bottle
    changing mode of build/scripts-2.6/bottle.py from 644 to 755
    changing mode of /home/hughdbrown/.virtualenvs/test/bin/bottle.py to 755
Successfully installed bottle
Cleaning up...

$ python
Python 2.6.6 (r266:84292, Mar 25 2011, 19:24:58) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bottle
>>> 
0 голосов
/ 13 декабря 2017

Я получаю эту ошибку в среде Windows.

Пожалуйста, посмотрите ниже:

C:\Python27>python Redirect_URL.py
Traceback (most recent call last):
  File "Redirect_URL.py", line 17, in <module>
    from bottle import get, request, static_file, run
ImportError: No module named bottle
0 голосов
/ 07 октября 2017

Я знаю, что опаздываю на вечеринку - но у меня возникла проблема с использованием команды python, и мой модуль bottle.py был расположен в моей директории 3.x lib.

Я только что бросил символическую ссылку из bottle.py в моем python3.x в мой текущий каталог 2.x следующим образом:

sudo ln -s ~/.local/lib/python3.5/site-packages/bottle.py /usr/local/lib/python2.7/dist-packages/bottle.py

Очевидно, измените номера версий, чтобы они соответствовали структуре вашего каталога!

0 голосов
/ 03 февраля 2012

Пожалуйста, проверьте следующую документацию по PYTHONHOME и PYTHONPATH:

  1. http://docs.python.org/using/cmdline.html#envvar-PYTHONHOME
  2. http://docs.python.org/using/cmdline.html#envvar-PYTHONPATH

и проверьте свой PYTHONHOME тоже.

...