Найти - Пользователи
Полная версия: установка pip
Начало » Python для новичков » установка pip
1
mokynis
Возможно вопрос не к знатокам python.
Два компьютера . На обоих стоит Debian 8, по умолчанию там ставится python3.4. На обоих установлен python3.6 (не из родного репозитория) и объявлен языком по умолчанию. Теперь проблема: на одном компьютере установлено все, что нужно для работы с python. Хочу сделать то же самое на втором, но не помню, как я это делал. Все уперлось в невозможность установить pip.
Пробовал из репозиториев-в конце установки сообщил, что не установились python-lxml и ndiff (но они и на первом не установлены). Установилась версия 1.5.6, которая ничего не устанавливала, но хоть -version сообщала.
Пытался через get-pip.py, через PyCharm-в результате и старая версия перестала отвечать. Куча ошибок, а в конце
 CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1
Вопрос: как устанавливать дополнительные библиотеки (а лучше-как установить pip)?
py.user.next
Для начала раздели для себя python и python3 и pip и pip3. Обычно на системах стоят питоны и второй, и третьей версии. Пакеты у них начинаются, соответственно, с python или python3.

mokynis
На обоих установлен python3.6 (не из родного репозитория) и объявлен языком по умолчанию.
Что значит “объявлен языком по умолчанию”? Как ты его “объявил”?

mokynis
Теперь проблема: на одном компьютере установлено все, что нужно для работы с python.
И не факт, что это всё правильно сделано.

Так что опиши, что у тебя было в чистой системе, потом как ты устанавливал туда питон поновее и потом как ты устанавливал в этот питон поновее пакеты.
mokynis
устанавливал python3.6 по этой (https://andreyex.ru/operacionnaya-sistema-debian/kak-ustanovit-python-3-na-debian-8/) инструкции
объявлял версией по умолчанию по этой (https://linux-notes.org/pereklyuchit-versiyu-python-v-unix-linux/)
на "рабочем компьютере использовал 1-й способ, на втором-2-й.
А вот как устанавливал pip на первом-не помню. Подозреваю, что
 apt-get install python3-pip
так, потому что python3-pip установлен (на втором, не рабочем, этот пакет установлен не был. Собственно, с попытки его установить все и началось)
Вообще, подозреваю, что что-то поломалось в самих репозиториях. Попробую разобраться. О результате сообщу
UPD
Спасибо за наводку: оказалось, что использование update-alternatives не лучший способ объявления версии по умолчанию. Воспользовался 1-м методом, почистил репозитории, поправил битые пакеты и все нормально установилось. Причина точно не в python
FishHook
mokynis
Вы решаете проблему не тем способом. Менять какое-то стандартное поведение системы для целей конкретного приложения, это плохое решение. Питон в линуксе используется широко, и если вы меняете версию питона для всей системы, то сложно предсказать, что у вас перестанет работать в результате этого вмешательства. Может быть пакетный менеджер отвалится, может быть какие-то скрипты инициализирующие, может весь ГУИ - кто знает. В линуксе программы и документы сами указывают системе чем их надо запускать, это называется https://ru.m.wikipedia.org/wiki/Шебанг_(Unix). То есть вы не меняете версию питона для всей системы, вы указываете, каким конкретно интерпретатором выполнять вашу программу. Ну и кроме того, есть такой инструмент как virtualenv, который как раз и нужен для того, чтобы разные проекты запускать с разными версиями библиотек. Соедините эти знания, и вам не надо будет мудрить.
py.user.next
mokynis
использование update-alternatives не лучший способ объявления версии по умолчанию
Этот софт, видимо, расчитан на сторонние программы, которые не имеют отношения к системе. А питон используется в системе. Поэтому питон должен стоять правильно: должна быть программа python и должна быть программа python3. Они обе должны быть. Дальше ты в каждом скрипте указываешь, каким питоном он запускается - вторым или третьим. Поиск бинарника идёт через программу env.

Для второго
#!/usr/bin/env python
# -*- coding: utf-8 -*-

Для третьего
#!/usr/bin/env python3
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB