Я установил anaconda3 на Ubuntu. Все работает безупречно за исключением одной маленькой проблемы. При использовании команды "Python" для выполнения некоторого произвольного файла Python это выполняет python3 с помощью анаконды вместо собственных 2,7 интерпретаторов Python. Как я могу изменить это?
Другими словами:
что происходит прямо сейчас:
python ex.py
ex.py выполняется anaconda3
python2.7 ex.py
ex.py выполняется python2.7
python3 ex.py
ex.py выполняется anaconda3
что я хочу произойти:
python ex.py
ex.py выполняется python2.7
python2.7 ex.py
ex.py выполняется python2.7
python3 ex.py
ex.py выполняется anaconda3
В этом случае вам нужно деактивировать среду conda.
Лучший совет - активируйте вашу среду conda только тогда, когда вам нужно (удалите conda activate
из файла .bashrc
), и, таким образом, система Python будет использоваться в общих задачах вашей ОС без проблем или непредвиденного поведения.
Как замечено от вывода echo $PATH
:
/home/john/anaconda3/bin:/home/john/.local/share/umake/bin:/home/john/bin:/home/john/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
/home/john/anaconda3/bin
каталог на первом месте и как соответствующее python
(аналогичный python2
) и python3
двоичные файлы присутствуют в каталоге, все Ваш python
сценарии интерпретируются двоичными файлами в том каталоге, не в масштабе всей системы, которые идут python-minimal
(python2
) и python3-minimal
(python3
) пакеты, и существующий в /usr/bin
каталог, который появляется позже в Ваш PATH
.
Вы должны:
Или
отбросьте /home/john/anaconda3/bin
каталог от PATH
, добавьте следующее к Вашему ~/.bashrc
:
export PATH='/home/john/.local/share/umake/bin:/home/john/bin:/home/john/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin'
Можно сделать:
echo "export PATH='<above_path_here>'" >>~/.bashrc
Не уверенный, если Вы хотите сохранить '/home/john/.local/share/umake/bin, сделайте свой выбор.
Только ради полноты, обоих python2
и python3
на самом деле symlinked к соответствующему последнему двоичному подарку в системе.