2.7.2 대신 3,2를 기본 파이썬으로 만들기 위해 PYTHONPATH를 어떻게 변경합니까?


16

에 python3.2가 있습니다 /usr/lib/python3.2. 그것이 그것이 설치되었다는 것을 확신하지 못하지만 그것이 현재라고 가정합니다.

내 시스템에 대한 몇 가지 사실 :

$ which python
/usr/local/bin/python

python터미널에 입력 하면 다음과 같은 결과가 나타납니다

$ python
Python 2.7.2 (default, Dec 19 2011, 11:12:13) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.

그런 다음 내가하는 길을 찾기 위해

>>> sys.info
>>> sys.path
['', '/usr/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg', '/usr/local/lib/python2.7/site-packages/pip-1.0.2-py2.7.egg', '/usr/local/lib/python2.7/site-packages/PIL-1.1.7-py2.7-linux-x86_64.egg', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']

이 모든 것을 알고 있으면 기본 시스템 파이썬을 2.7.2에서 3.2로 어떻게 변경합니까?

답변:


28

기본 파이썬을 변경하는 것은 좋지 않습니다. 많은 시스템 프로그램은 python3이 아닌 python2에 의존합니다. 당신은 python3를 사용하려는 경우, 당신은 단지 명령을 입력 python3을 .


4
지원 라이브러리 및 도구 (예 : pyenv, fabric)의 경우 원하는 것으로 예상 /usr/bin/env python됩니다. 따라서 수동 입력 python3은 해결책이 아닙니다.
에릭 밀

9

PYTHONPATH는 그와 관련이 없습니다. 파이썬 인터프리터, 인터프리터가 실행되는 곳,로드 할 추가 모듈을 찾을 위치를 알려줍니다.

그러나 다른 의견자가 관찰했듯이 시스템의 기본 버전을 변경하는 것은 위험합니다. Python2에 대해 작성된 기존 패키지가 손상 될 위험이 있으며 / usr / bin / env python을 사용하여 해당 인터프리터를 찾으십시오.

사실, 그것은 그것을 표현하는 잘못된 방법입니다. 파이썬의 기본 버전을 변경하면 전체 우분투 시스템이 손상되고 많은 프로그램이 작동하지 않습니다. 또한 완전히 필요하지 않습니다.

그러나 당신이 물었을 때, 당신은 이렇게합니다 :

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3.2mu /usr/bin/python

행복한 추락!


7

나는 이것을 .bashrc지금까지 잘 추가 했다.

alias python='python3'

1
별명에 액세스 할 수없는 스크립트에서 파이썬을 호출하지 않는 한 작동합니다.
HelloGoodbye

4

에 따르면 당신이 설정하여 환경 변수를 할 수 있습니다하거나 새로운 수입 경로 폴더를 추가 할 수 있습니다. 그러나 유연성을 원한다면 파이썬 프로젝트에 virtualenvs 를 사용하는 것이 좋습니다 .



1

실제로 파이썬 대신에 python3.2에 설치된 유형이면 기본값 대신로드합니다. 그것을 테스트하기 위해 파이썬 3.2를 설치했습니다 =)

실제로 열린 터미널이 설치되어 있지 않으면 sudo apt-get install python3.2를 입력하여 입력하십시오.

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