#python #python-3.x #anaconda #environment-variables
#python #python-3.x #анаконда #переменные среды
Вопрос:
У меня установлен python, и у меня установлена anaconda.
Когда я набираю python3
и запускаю оболочку python, я загружаю некоторые библиотеки import LIB
и получаю ошибки.
Однако, когда я запускаю оболочку python с /usr/bin/python3.8
помощью и импортирую ту же библиотеку, все работает нормально.
Каковы мои решения сейчас?
Должен ли я отменить anaconda? Должен ли я изменить .bashrc
, чтобы отключить anaconda?
Это .bashrc
часть об anaconda:
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/user1/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/user1/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/user1/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/user1/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
Комментарии:
1. Это означает, что библиотека LIB не установлена в текущей среде python. сначала проверьте, какая среда python используется. $какой python3
2. @Lohith Какой python3 дает мне какой python3 /home/user1 /anaconda3/bin/python3
3. Для среды по умолчанию установлена библиотека /usr/bin/python3.8. установите библиотеку еще раз и попробуйте
4. Есть ли способ улучшить среду по умолчанию? Должен ли я удалить anaconda? Должен ли я изменить .bashrc?
5. хорошо, проверьте, какой pip используется $ какой pip3
Ответ №1:
Вы должны использовать виртуальные среды. С помощью Anaconda это просто. Вы создаете виртуальную среду, набрав команду, подобную следующей: conda create -n yourenvname python=3.8 anaconda
, а затем активируете свою виртуальную среду, набрав: source activate yourenvname
. Назовите свою среду как угодно. Я использую py38, если приведенная выше команда имеет python = 3.8 или py35, если python = 3.5. Затем, если вы хотите импортировать библиотеку, просто сделайте это как import sys
или любую другую библиотеку, которую вы хотите импортировать.