Уведомления

Группа в Telegram: @pythonsu

#1 Июль 6, 2020 10:36:03

tmpnikl
Зарегистрирован: 2020-03-24
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Upgrade Python

OS-Debian GNU/Linux 9

Есть небольшой код
from bs4 import BeautifulSoup as bs, Comment
from selenium import webdriver
При запуске python test.py
Выдаёт ошибку
UserWarning: The soupsieve package is not installed. CSS selectors cannot be used.
'The soupsieve package is not installed. CSS selectors cannot be used.'
При запуске test.py
from: can't read /var/mail/bs4
from: can't read /var/mail/selenium
При запуске python3.7 test.py
from bs4 import BeautifulSoup as bs, Comment
ModuleNotFoundError: No module named ‘bs4’

1. Как узнать какая версия питона запускается по умолчанию?
(понятно если python –version это 2.7, python3.7 –version это 3.7, но на диске есть ещё пять папок с разными питонами и если я запускаю просто скрипт test.py какой питон подхватывается, в каком конфиге посмотреть?)
2. Как сделать python3.7 по умолчанию, чтоб набрал просто python и он запустился, а остальные деинсталлировать насовсем.
3. Когда запускаешь pip он к какому питону устанавливает модули (bs, selenium) и как установить эти модули к определёному модулю?

Офлайн

#2 Июль 6, 2020 11:43:56

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Upgrade Python

tmpnikl
OS-Debian GNU/Linux 9
Видимо, не знаешь, как пользоваться Linux.

tmpnikl
2. Как сделать python3.7 по умолчанию, чтоб набрал просто python и он запустился, а остальные деинсталлировать насовсем.
А как они там появились, эти остальные?

Вот ты просто не по правилам всё ставил, поэтому образовалась куча мусора. В Linux всё надо ставить из репозиториев автоматически, тем более, когда ты не знаешь нифига про устройство системы.

tmpnikl
При запуске test.py
from: can't read /var/mail/bs4
from: can't read /var/mail/selenium
Такой бред просто не может сам собой появиться. Это нужно быть “гением” и намудрить с три короба.

Так что начни всё сначала. В системе должен стоять python и python3. Дальше ты можешь доустанавливать другие версии питона. Никакие стандартные питоны ты не меняешь, потому что система сама их использует тоже в служебных скриптах на питоне.

tmpnikl
1. Как узнать какая версия питона запускается по умолчанию?
  
import sys
sys.version
И это, никакой версии питона по умолчанию нет. Сейчас стоят два питона в системах и один запускается через python, а другой - через python3. Соответственно и пакеты разделены для этих питонов в репозитории. python - это вторая версия питона, которая сохраняется потому, что существует много скриптов для второй версии. python3 - это третья версия питона, соответствующая по времени времени выпуска самой системы, поэтому она может быть довольно старой третьей версией. И дальше ты в дерево /usr/local устанавливаешь самый новый питон. И можешь даже символьную ссылку на python3 перевести на самый новый питон, расположенный в дереве /usr/local. Тогда у тебя будет и второй питон, и третий питон, и новый питон.

Скрипты же ты пишешь так, что каждый скрипт сам знает, на какой версии ему запускаться. Для этого существует первая шебанг-строка в скрипте
#!/usr/bin/env python
#!/usr/bin/env python3



Отредактировано py.user.next (Июль 6, 2020 16:12:12)

Офлайн

#3 Июль 7, 2020 05:48:56

tmpnikl
Зарегистрирован: 2020-03-24
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Upgrade Python

Спасибо за подробный ответ.

Офлайн

#4 Июль 7, 2020 06:24:07

VadimK
Зарегистрирован: 2013-07-03
Сообщения: 199
Репутация: +  16  -
Профиль   Отправить e-mail  

Upgrade Python

https://github.com/pyenv/pyenv - и забыть про глобальные зависимости, как про детские болезни. На самом деле - офигенно удобно.

Офлайн

#5 Июль 9, 2020 00:55:17

4kpt_V
От: Харьков
Зарегистрирован: 2017-02-19
Сообщения: 299
Репутация: +  12  -
Профиль   Отправить e-mail  

Upgrade Python

VadimK
+
Особенно вставляет команда local. Плюс оно само подберет virtualenv нужный.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version