#python #anaconda #conda #environment
#python #anaconda #conda #Окружающая среда
Вопрос:
Я использую Anaconda в windows10.
Каждый раз, когда я создаю новую среду с conda
помощью command без указания конкретной python
версии, кажется, что она просто устанавливает разные версии python.
Почему это происходит? Как conda create
команда решает, какую версию python
извлекать?
Пример:
conda create -n env_name1
-> activate env_name1
-> python --version
-> python 3.9.1
conda create -n env_name2
-> activate env_name2
-> python --version
-> python 3.8.3
Комментарии:
1. Возможно, в этой среде вы получили другой файл condarc.
2. Разве вы не запрашиваете одновременную установку некоторых пакетов, например
conda create -n name package1 package2
? Или точно так, как вы указали в вопросе? Уточнение, поскольку последнее было бы действительно странным. Оно должно быть детерминированным.3. @LukaszTracewski Точно так, как я изложил в вопросе, но теперь, похоже, он устанавливает python 3.8.3 только всякий раз, когда я создаю новую среду. Это определенно произошло вчера, хотя, когда я создал conda -n env_name , он установил python 3.9.1. Как conda решает, какой python установить? Можно ли это установить в конфигурации?
4.
conda create -n env_name1
alone ничего не устанавливает, поэтому вы, вероятно, просто выбираете Python из другого места на PATH. Как правило, почти всегда можно улучшить работу с Conda, указав все известные требования при создании среды. Так что попробуйтеconda create -n env_name1 python=3.8
(или любую другую версию, которая вам действительно требуется), а также любые пакеты.5. @merv спасибо, это прояснило ситуацию для меня. Как вы сказали,
conda create -n env_name1
не устанавливаетсяpython
,python --version
внутри env просто ссылается на python, расположенный вbase
env. Я также понял, что вpython.exe
каталоге установлено несколько разных версийC:Usersanaconda3pkgs
(я не знаю почему), и одна из нихpython3.9.1
такова, что, должно быть, по какой-то причине она ссылалась на эту.
Ответ №1:
Убедитесь, что вы деактивировали env_name1 перед созданием нового env_name2, потому что вы можете использовать разные файлы конфигурации (.condarc) и каналы.
Попробуйте создать все среды из базовой.