LINUX.ORG.RU

почему не срабатывает import bottle?

 , ,


1

1

помогите пожалуйста понять почему не получается использовать пакет bottle

я в mint18 при помощи virtualenv создал окружение, активировал его командой

source activate

затем в index.py поместил такой код:

from bottle import route, run

@route('/hello')
def hello():
    return "Hello World!"

run(host='localhost', port=8080, debug=True)

у меня не получается его запустить. получаю следующее сообщение об ошибке:

(venv) kalinin@lenovo ~/python/parser_git $ python --version
Python 3.6.8
(venv) kalinin@lenovo ~/python/parser_git $ pip freeze
bottle==0.12.16
pkg-resources==0.0.0
(venv) kalinin@lenovo ~/python/parser_git $ python index.py
Traceback (most recent call last):
  File "index.py", line 1, in <module>
    from bottle import route, run
ModuleNotFoundError: No module named 'bottle'

при этом через chmod назначил всем используемым файлам права 777



Последнее исправление: prozaik (всего исправлений: 1)
Ответ на: комментарий от grazor
(venv) kalinin@lenovo ~/python/parser_git $ which python
/home/kalinin/python/parser_git/venv/bin/python
(venv) kalinin@lenovo ~/python/parser_git $ which pip
/home/kalinin/python/parser_git/venv/bin/pip
prozaik
() автор топика
Ответ на: комментарий от Norgat

а вы читали что в первом посте написано?

bottle==0.12.16
prozaik
() автор топика
Последнее исправление: prozaik (всего исправлений: 1)
Ответ на: комментарий от prozaik

А что тогда скажет

$ python -c "import sys; print(sys.path)"

?

grazor ★★
()

ребята, я лошара, сорри.

нужно было запускать скрипт на так

python index.py

, а так

python3 index.py

не понимаю в чём разница, ведь

(venv) kalinin@lenovo ~/python/parser_git $ python --version
Python 3.6.8
(venv) kalinin@lenovo ~/python/parser_git $ python3 --version
Python 3.6.8

prozaik
() автор топика
Последнее исправление: prozaik (всего исправлений: 2)
Ответ на: комментарий от grazor

я прозрел, спасибо

(venv) kalinin@lenovo ~/python/parser_git $ ls -l `which python`
lrwxrwxrwx 1 kalinin kalinin 9 май  6 22:13 /home/kalinin/python/parser_git/venv/bin/python -> python3.6
(venv) kalinin@lenovo ~/python/parser_git $ python -c "import sys; print(sys.path)"
['', '/home/kalinin/python/parser_git', '/home', '/home/kalinin', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']
(venv) kalinin@lenovo ~/python/parser_git $ ls -l `which python3`
lrwxrwxrwx 1 kalinin kalinin 9 май  6 22:13 /home/kalinin/python/parser_git/venv/bin/python3 -> python3.6
(venv) kalinin@lenovo ~/python/parser_git $ python3 -c "import sys; print(sys.path)"
['', '/home/kalinin/python/parser_git', '/home', '/home/kalinin', '/home/kalinin/python/parser_git/venv/lib/python36.zip', '/home/kalinin/python/parser_git/venv/lib/python3.6', '/home/kalinin/python/parser_git/venv/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/kalinin/python/parser_git/venv/lib/python3.6/site-packages']

хотя всё таки странная ситуация. потому что при включенном виртуальном окружении, система всё равно предоставляет возможность обращаться к версии питона по умолчанию в невиртуальном окружении при помощи

python

prozaik
() автор топика
Последнее исправление: prozaik (всего исправлений: 1)

при помощи virtualenv создал окружени

Зачем? Почти десять лет пишу на питоне, за это время оно понадобилось раза три, а действительно пригодилось всего раз.

Если хочешь действительно изолированное окружение, юзай докер, а если же хочешь быть модным питонохипстером, то юзай сразу pipenv.

WitcherGeralt ★★
()
Ответ на: комментарий от WitcherGeralt

действительно изолированное окружение

Виртуальные машины

юзай докер

Не нужно, из пушки по воробьям

питонохипстером, то юзай сразу pipenv.

до следующей sjw-драмы? не нужно

anonymous
()
Ответ на: комментарий от anonymous

Не нужно, из пушки по воробьям

Готов поспорить, что virtualenv ТСу тоже нафиг не нужен, он разрабатывает единственное приложение в единственном окружении.

WitcherGeralt ★★
()

Без акциза нельзя импортировать, у нас с этим строго

annulen ★★★★★
()
Ответ на: комментарий от WitcherGeralt

он разрабатывает единственное приложение в единственном окружении.

Это не повод пихать всякую херь в системный питон.

anonymous
()
Ответ на: комментарий от annulen

А потом софт не запускается т.к. разраб не указал версии либ, сиди и фикси. Докер реально рулить.

KillTheCat ★★★★★
()

А почему не хочешь

 virtualenv -p python3 envname 
?

Cirno
()
Ответ на: комментарий от anonymous

Ставишь из под юзера, проблема-то, всё равно оно для разработки нужно.

WitcherGeralt ★★
()
Ответ на: комментарий от grazor

я через pyenv всегда ставлю последнюю версию питона, делаю ее версией по-умолчанию и поэтому никогда не использую python2, python3

tz4678 ★★
()
Ответ на: комментарий от tz4678

всегда посылаю гибдд-шников, говорю, у меня свои пдд

prozaik
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.