기본 Anaconda Python 환경을 변경하는 방법


170

Anaconda를 설치하고 py3k (Python 3.3을 보유하고 있음)와 py34 (Python 3.4를 보유하고 있음)라는 두 가지 추가 환경을 만들었습니다. 그 외에도 Anaconda 설치 프로그램이 기본적으로 생성하고 Python 2.7을 보유하는 'root'라는 기본 환경이 있습니다. 이 마지막 것은 기본값이며 터미널에서 'ipython'을 시작할 때마다 버전 2.7을 제공합니다. Python 3.4를 사용하려면 셸에서 명령을 실행해야합니다.

source activate py34
ipython

기본 환경을 Python 3.4로 변경합니다. 이것은 잘 작동하지만 Python 2.7 대신 Python 3.4에서 작업하는 대부분의 시간이 지났으므로 성가시다. (교육 목적으로 유지하는 것은 다소 긴 이야기이다). 어쨌든 기본 환경을 Python 3.4로 변경하는 방법을 알고 싶습니다. 모든 것을 처음부터 다시 설치하고 싶지는 않습니다.


7
당신은 사용으로 간주 한 source activate py34당신에 .bashrc?
cel

1
답변 주셔서 감사합니다. 소스 명령을 서브 쉘이 아닌 동일한 쉘에서 실행해야하기 때문에 bash 스크립트에서 source activate를 호출 할 수 없다고 생각하기 때문에 시도하지 않았습니다. 위의 두 줄을 bash 스크립트에 넣으려고했는데 작동하지 않는다고 말할 수 있습니다.
user2734434

4
나는이 CONDA_ROOT="/Users/bla/miniconda"source ${CONDA_ROOT}/bin/activate ${CONDA_ROOT}/envs/empty &> /dev/null내에서 .bashrc그것은 잘 작동 보인다.
cel

1
.bashrc스크립트로 실행되지는 않지만 새 셸에서 제공 한다고 생각 하므로 bash 스크립트를 실행하여 확인할 수 없습니다.
cel

3
@ user2734434 bashrc 파일은 세션이 시작될 때 소스가되므로 파일을 넣으면 source activate쉘 환경에 영향을 미칩니다.
asmeurer

답변:


86

다른 환경으로 바꾸고 싶다면

source activate environment-name

( environment-name`conda create로 만들 수 있습니다)


일반적으로 새로운 환경을 만드는 것이 가장 좋습니다. 그러나 기본 환경 에서 Python 버전을 실제로 변경하려면 다음과 같이하십시오.

먼저, 다음을 실행하여 최신 버전의 conda가 있는지 확인하십시오.

conda update conda

그런 다음 실행

conda install python=3.5

루트 환경의 모든 패키지를 Python 3 버전으로 업데이트하려고 시도합니다. 가능하지 않은 경우 (예를 들어, 일부 패키지가 Python 3.5 용으로 빌드되지 않았기 때문에) 어떤 패키지가 문제를 일으켰는지 나타내는 오류 메시지가 표시됩니다.

pip로 패키지를 설치 한 경우 다시 설치해야합니다.


1
@flutefreak 실제로 Windows에서 작동 conda update conda합니다 (최신 버전을 사용 하려면 먼저 실행 하십시오). 답변을 업데이트하겠습니다.
asmeurer

126
이 답변은 기본 환경 변경에 관한 질문에 연결되지 않는 것 같습니다.

16
@asmeurer 그러나 그것은 요구되지 않았습니다. 그는 어떤 환경에서도 패키지를 업데이트하고 싶지 않습니다. 그는 py34를 기본 환경으로 만들고 개입하지 않고 활성화하기를 원하므로 py34는 "source activate"명령을 보내기 전에 활성화됩니다.
Bob

20
@Bob에 동의해야합니다. 루트 환경의 패키지는 3.5로 업데이트되며 이는 원래 포스터의 특정 문제를 해결했을 수 있습니다. 그러나 프롬프트를 열면 여전히 루트 환경에있게되므로 다른 기본 환경을 지정하지 않았습니다. 이것을 달성하고 Google을 달성하려는 모든 사람들 이이 질문에 도달하기 때문에 원래 질문에도 대답하면 더 좋습니다. 아마도 기본 환경을 루트 이외의 것으로 변경할 수 없습니까?
arjan

4
이것은 나를 위해 작동하지 않습니다. 내 기본값은 python 3.4이며 플래그를 사용하여 python=3.5python을 3.4에서 3.5로 업그레이드하지 않았습니다 ... 모든 제안?
WillZ

56

개요
어떤 사람들은 호환성을 이유로 다른 버전의 파이썬을 가진 여러 Anaconda 환경을 가지고 있습니다. 이 경우 기본 환경을 설정하는 스크립트가 있어야합니다. 이 방법을 사용하면 환경에서 사용하는 파이썬 버전을 보존 할 수 있습니다.

다음은 environment_name환경 의 이름 이라고 가정 합니다.

Mac / Linux :
bash 프로파일을 편집하여 마지막 행이 source activate environment_name입니다. Mac OSX에서 이것은 ~ / .bash_profile이고 다른 환경에서는 ~ / .bashrc 일 수 있습니다.

예 :
Mac OSX에서 어떻게했는지

  1. 터미널을 열고 다음을 입력하십시오.

    nano ~/.bash_profile

  2. 파일 끝으로 이동하여 다음을 입력하십시오. 여기서 "p3.5"는 내 환경입니다.

    source activate p3.5

  3. 파일을 종료하십시오. 새 터미널 창을 시작하십시오.

  4. 활성화 된 환경을 보려면 다음을 입력하십시오.

    conda info -e

결과는 기본적으로 p3.5 환경을 사용하고 있음을 보여줍니다.

Windows의 경우 : 명령 프롬프트
(.cmd)를 작성 activate environment_name하고 명령 프롬프트를 열 때마다 다음 지시 사항에 따라 실행하십시오.

  1. 배치 파일 명령 (예 : "my_conda.cmd")을 만들어 Application Data 폴더에 넣습니다.
  2. 열 때마다 자동으로 시작되도록 구성하십시오 cmd. 이 설정은 레지스트리에 있습니다.
    키 : HKCU \ SOFTWARE \ Microsoft \ Command 프로세서
    값 : 자동 실행
    유형 : REG_EXPAND_SZ
    데이터 : "% AppData % \ my_conda.cmd"

이 답변에서 : https://superuser.com/a/302553/143794


1
대단히 감사합니다. 내 Mac 버전에서는 Python 2를 제거 할 수 없다는 것을 알았습니다. 따라서 두 가지 별도의 환경을 설정하기 위해 권장되는 조치를 따랐지만 모든 새 터미널 창에서 환경을 활성화해야한다는 것은 매우 성가신 일이었습니다. 작동합니다!
Livvy Jeffs

Windows 10에서이 작업을 수행하면 파이프가 끊어지고 명령 프롬프트가 고정됩니다.
aaronsnoswell

Windows 10을 사용하는 사람은 이것으로 더 나은 운이 있습니까?
Wassadamo

3
이것은 적어도 대답이되어야합니다 (적어도 유닉스 기반의 Conda의 경우)!
Simon Van Machin

50

리눅스에서 수정하여 기본 환경을 설정하는 쉬운 방법이 ~/.bashrc또는 ~/.bash_profile 끝에서 당신이 뭔가를 찾을 수 있습니다

# added by Anaconda 2.1.0 installer
export PATH="~/anaconda/bin:$PATH"

로 교체

# set python3 as default
export PATH="~/anaconda/envs/python3/bin:$PATH"

그게 전부입니다.


3
그리고 질문은 무엇입니까?
Dieter Meemken

이 솔루션을 시도했지만 여전히 내 경로에 아이디어가 있습니까?
William Ross

10
이것은 기본 환경을 설정하지 않습니다. 그것은 conda를 우회하고 "python3"이 기본값이라고 생각하기 위해 가짜로 보입니다. "conda info -e"는 여전히 "root"를 현재 환경으로 표시합니다. 나는 아직도 conda에게 어떤 기본값인지 알려주는 방법을 찾고 있습니다.
MrMas

8
이것은 콘다의 관점에서 기본 환경을 설정하지 않습니다. 그것은 conda를 우회하고 "python3"이 기본값이라고 생각하기 위해 가짜로 보입니다. "conda info -e"는 여전히 "root"를 현재 환경으로 표시합니다. 이 문제를 해결하려면 CONDA_PREFIX 및 CONDA_DEFAULT_ENV도 설정해야합니다. 그럼에도 불구하고 해답은 여전히 ​​해킹입니다. 왜 'source activate <new default environment>'를 실행하는 것이 좋습니까?이 작업을 수행하는 "내장"방법으로 이미 conda가 제공되어 있기 때문입니다.
MrMas

거기인가 .bashrc또는 .bash_profile윈도우 10에서? 이 jattenberg.github.io/PDS-Fall-2013/assets/install/… 을 따르는 동안 cygwin에서 하나를 찾았 습니다 . 그러나 OP의 원하는 기능을 얻기 위해 변경 해야하는 것이 확실하지 않습니다.
Wassadamo

14

Windows의 경우 Anaconda는 Anaconda Prompt와 함께 제공되며 cmd의 바로 가기이며 PATH 변수에 아나콘다를 추가하지 않고 conda 명령을 실행할 수 있습니다. 해당 위치를 찾고 사본을 복사하고 이름을 바꿉니다 (예 : myenv_prompt). myenv_prompt를 마우스 오른쪽 단추로 클릭하고 컨텍스트 메뉴에서 특성을 선택하십시오.

여기에 이미지 설명을 입력하십시오

속성 의 대상 형식 창은 이미 다음과 같은 텍스트로 채워져 있어야합니다.%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\ 이 명령에는 세 가지 부분이 있습니다. 1) 시작 ... \ cmd.exe 2) 실행 ... \ acitvate.bat 환경 3) ... \ 미니 콘다 3 \

당신이 채울 즉, 기본값으로 원하는 환경 (말의 myenv)의 경로를 3 부분 변경 대상 양식 같은 것을%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\envs\myenv

이제 myenv_prompt는 python의 기본 환경으로 myenv를 사용하여 cmd를 시작하는 바로 가기로 작동합니다. 이 바로 가기는 시작 메뉴에 유지하거나 작업 표시 줄에 고정 할 수 있습니다.

이 방법의 장점 중 하나는 기본 환경과 다른 환경을 가진 몇 가지 바로 가기를 만들 수 있다는 것입니다. 또한 시작을 작성하여 기본 폴더를 설정할 수 있습니다 속성 창 형태로

도움이 되었기를 바랍니다

추신 : Anaconda Prompt를 찾을 필요가 없으며 바로 가기의 대상을 변경하여 수행 할 수 있습니다. 그러나 cmd.exe 및 activate.bat의 경로를 알아야합니다.


2
이것은 최고 답변이어야합니다
James McCormac

나는이 방법을 사용하지만, 내 첫 번째 부분은 조금 다르다 : C:\Windows\System32\cmd.exe /c start ""그것의에 대해 내가 그 해결책에 도착 방법을 잘 모르지만, 여기에 내가 만든 게시물의 구문
xtian

8

영구 변경

conda install python={version}

일시적으로 변경

환경을보십시오

실행 conda info --envs터미널 창 또는 Anconda 프롬프트에

설치하려는 환경이 표시되지 않는 경우

실행 conda create -n py36 python=3.6 anaconda당신의 선호로 파이썬 3.6 변경 버전

환경 활성화 (아나콘다 프롬프트 사용)

activate envnmeenvnme를 실행 하면이 명령 conda info --envs으로 실행할 conda info --envs수 있습니다.

base * C:\Users\DulangaHeshan\Anaconda3 py36 C:\Users\DulangaHeshan\Anaconda3\envs\py36

그런 다음 실행 activate py36

실행 확인 python --version

Windows에서는 다른 환경을 활성화하기 전에 한 환경을 비활성화하는 것이 좋습니다. https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html?highlight=deactivate%20environment


3
OP는 기본 환경을 py36으로 변경하여 activate py36시작 할 때마다 실행될 필요가없는 솔루션을 원한다고 생각합니다 .
사다 모

6

정답은 (2018 년 12 월 기준) ... 할 수 없습니다. 업그레이드 conda install python=3.6는 작동 할 수 있지만 필요한 패키지가 있지만 제거 할 수없는 경우에는 그렇지 않을 수 있습니다.

Anaconda는 기본 환경이라는 이름을 사용합니다 base 같은 이름으로 새 환경 (예 : python 3.6)을 만들 수 없습니다. 이것은 의도적 인 것입니다. 기본 Anaconda를 python 3.6으로 사용하려면 올바른 방법은 python 3.6 용 Anaconda를 설치하는 것입니다. 패키지 관리자로서 Anaconda의 목표는 다양한 환경을 캡슐화하는 것이므로 소스를 활성화해야하는 이유와 기본 패키지를 마음대로 조용히 전환 할 수없는 이유는 프로덕션 시스템에서 많은 문제를 일으킬 수 있습니다.


기본 환경이 손상되어 작동하는 환경으로 바꾸려면 어떻게합니까?
endolith

@endolith 기본 환경이 손상되어 작동하는 환경으로 바꾸려면 어떻게해야합니까? Conda를 다시 설치하십시오.
AMC

@AMC 여러 번 다시 설치했습니다.
endolith

1
@endolith 동일한 정확한 문제를 해결하기 위해 여러 번 다시 설치 했습니까? 어떻게 깨졌습니까? 우리는 이것을 다른 곳에서 논의해야합니다 . 나는 대화방을 만들었습니다 .
AMC

1

환경에 대한 활성화는 플랫폼에서 몇 초가 걸리기 때문에 여기에 제시된 답변에 만족하지 못했습니다 (어떤 이유로 든)

기본값으로 원하는 환경이 실제 기본값보다 우선하도록 경로 변수를 수정했습니다.

제 경우에는 환경 "py35"에 대해 다음 명령을 사용했습니다.

setx PATH "%userprofile%\Anaconda3\envs\py35\;%PATH%"
setx PATH "%userprofile%\Anaconda3\envs\py35\Scripts;%PATH%"

환경이 저장된 위치를 찾으려면 활성화하고을 입력하십시오 where python. 이 방법에 단점이 있는지 확실하지 않습니다. 또한 conda 실행 파일의 기본 경로를 변경하기 때문입니다. 그럴 경우 의견을 말하십시오.


1

아나콘다를 사용하여 라이브러리를 설치할 때 이것을 얻었습니다. 내 버전은 Python 3. *에서 2.7로 바뀌었고 많은 것들이 작동을 멈췄습니다. 내가 찾은 최고의 솔루션은 사용 가능한 최신 버전을 먼저 보는 것입니다.

conda search python

그런 다음 원하는 버전으로 업데이트하십시오.

conda install python=3.*.*

출처: http://chris35wills.github.io/conda_python_version/

다른 유용한 명령들 :

conda info
python --version

내 버전은 Python 3. *에서 2.7로 바뀌었고 많은 것들이 작동을 멈췄습니다. 내가 빠진 것이 아니라면 질문과 OP에 설명 된 것과 관련이없는 것 같습니다.
AMC

0

바탕 화면이나 작업 표시 줄에 anaconda 프롬프트의 바로 가기를 만든 다음 해당 바로 가기의 속성에서 "Target :"의 마지막 경로를 ur 환경 경로로 수정하십시오.

C : \ Users \ BenBouali \ Anaconda3 \가 C : \ Users \ BenBouali \ Anaconda3 \ envs \ tensorflow-gpu로 변경됩니다.

시사

이 방법으로 u를 클릭하면 특정 환경을 열 때 바로 가기를 사용할 수 있습니다. 경로에도 추가 할 수 있으며 이제 바로 가기 이름을 입력하여 Windows 실행 상자에서 환경을 실행할 수 있습니다.


0

Windows에서 다음 줄이 포함 된 배치 파일을 작성하십시오.

start cmd /k "C:\Anaconda3\Scripts\activate.bat C:\Anaconda3 & activate env"

따옴표로 묶인 첫 번째 경로는 Anaconda 설치에서 activate.bat 파일의 경로입니다. 시스템의 경로가 다를 수 있습니다. 물론 activate 명령 뒤에 오는 이름은 원하는 환경 이름이어야합니다.

그런 다음 Anaconda 프롬프트를 열어야 할 때 배치 파일을 실행하십시오.


0

로드 당신의 "기본"환경 - OP의로 py34- 당신이 당신의 터미널 / 쉘을로드 할 때.

Bash를 사용하는 경우 다음 줄을 입력하십시오.

conda activate py34

귀하의 .bash_profile(또는 .bashrc)

$ echo 'conda activate py34' >> ~/.bash_profile

새 터미널을 실행할 때마다 conda 환경 py34이로드됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.