programing

리눅스에 파이썬 두 가지 버전이 있습니다.2.7을 기본값으로 설정하는 방법

minimums 2023. 9. 20. 20:13
반응형

리눅스에 파이썬 두 가지 버전이 있습니다.2.7을 기본값으로 설정하는 방법

리눅스 박스에 파이썬 두 가지 버전이 있습니다.

$python
Python 2.6.6 (r266:84292, Jul 10 2013, 22:48:45) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 


$ /usr/local/bin/python2.7
Python 2.7.3 (default, Oct  8 2013, 15:53:09) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

$ which python
/usr/bin/python
$ ls -al /usr/bin/python
-rwxr-xr-x. 2 root root 4864 Jul 10 22:49 /usr/bin/python

2.7 를 할 때 2을 기본 으로 만들려면 ?python2.7에 들어간다고요?

기본 Python을 실제로 변경하고 싶지 않을 수도 있습니다.

은 Python 했습니다에 했습니다./usr/bin할 수 , , 에 될 수 있습니다.#! /usr/bin/env python. 일반적으로 파이썬 2.6 스크립트를 2.7에서 실행하면 안전한데 위험을 감수하시겠습니까?

외에도 다, 로와 원숭이./usr/bin는 패키지 관리자의 패키지 관리 기능을 손상시킬 수 있습니다.것의 합니다.PATH 다른 에 영향을 미칠 것입니다. (입니다가 더 입니다. 은,입니다)/usr/local/bin보다 앞서서/usr/bin도 있습니다. 하지만 있을 것입니다 입니다.

그러나 입력할 때 시스템이 2.7로 실행되도록 기본 Python을 변경할 필요는 없습니다.python.


먼저 셸 별칭을 설정할 수 있습니다.

alias python=/usr/local/bin/python2.7

합니다.~/.bashrc변경 내용이 지속적으로 유지되기를 원한다면, 그리고 이제 당신이 입력할 때python한 2.할 때/usr/bin/env python준 2.6합니다를 합니다.


또는 2.7(또는 다른 프로젝트의 경우 별도의 venv)로 가상 환경을 만들고 venv 내부에서 작업을 수행하면 됩니다.

더하다/usr/local/bino대로PATH 변수(수보다 ),수/usr/bin.

를 들어, 의 RC 됩니다에 이 됩니다 예를 들어 배시의 경우 이 작업을 입력합니다..bashrc:

export PATH="/usr/local/bin:$PATH"

됩니다.python인에/usr/local/bin 가기 에, /usr/bin.

(물론, 이것은 또한 당신이 다음과 같은 것을 가져야 한다는 것을 의미합니다./usr/local/bin/pythonpython2.7연결되지 를 해야 다)

명령을 입력합니다.

which python

//output:
/usr/bin/python

cd /usr/bin
ls -l

여기 이런 것을 볼 수 있습니다.

lrwxrwxrwx 1 root   root            9 Mar  7 17:04  python -> python2.7

기본 python 2.7은 'python' 텍스트에 소프트 링크되어 있습니다.

그래서 소프트링크 파이썬을 제거합니다.

sudo rm -r python

위의 명령을 다시 시도합니다.

ls -l

소프트 링크가 제거된 것을 볼 수 있습니다.

-rwxr-xr-x 1 root   root      3670448 Nov 12 20:01  python2.7

그런 다음 python 3.6에 대한 새로운 소프트링크를 만듭니다.

ln-s/usr/bin/ python3.6 파이썬

그럼 명령어를 사용해 보십시오.python

//output:
Python 3.6.7 (default, Oct 22 2018, 11:32:17) 
[GCC 8.2.0] on linux

help,copyright,credits아니면license자세한 정보는.

다음 방법으로 python의 현재 버전을 확인합니다.

$ python --version

python이 어떤 파일에 대한 상징적인 링크인지 확인합니다.

  $ ll /usr/bin/python

출력 Ex:

 lrwxrwxrwx 1 root root 9 Jun 16  2014 /usr/bin/python -> python2.7*

사용 가능한 다른 버전의 python을 확인합니다.

$ ls /usr/bin/python*

출력 Ex:

/usr/bin/python     /usr/bin/python2.7-config  /usr/bin/python3.4         /usr/bin/python3.4m-config  /usr/bin/python3.6m         /usr/bin/python3m
/usr/bin/python2    /usr/bin/python2-config    /usr/bin/python3.4-config  /usr/bin/python3.6          /usr/bin/python3.6m-config  /usr/bin/python3m-config
/usr/bin/python2.7  /usr/bin/python3           /usr/bin/python3.4m        /usr/bin/python3.6-config   /usr/bin/python3-config     /usr/bin/python-config

python의 현재 버전을 3.6 버전으로 변경하려면 편집 파일 ~/.bashrc:

vim ~/.bashrc

파일 끝에 아래 줄을 추가하고 저장:

alias python=/usr/local/bin/python3.6

pip for python 3.6을 설치하려면 다음과 같이 하십시오.

$ sudo apt-get install python3.6 python3.6-dev
$ sudo curl https://bootstrap.pypa.io/ez_setup.py -o - | sudo python3.6
$ sudo easy_install pip

Success에서 pip의 현재 버전을 확인합니다.

$ pip3 -V

출력 Ex:

pip 1.5.4 from /usr/lib/python3/dist-packages (python 3.6)

모든 OS에는 python의 기본 버전이 제공되며 /usr/bin에 있습니다.OS와 함께 제공되는 모든 스크립트(예: yum)는 /usr/bin에 있는 python 버전을 가리킵니다.새 버전의 python을 설치할 때 새 버전의 python에서 작동하지 않을 수 있는 기존 스크립트를 중단하고 싶지 않습니다.

올바른 방법은 python을 대체 버전으로 설치하는 것입니다.

e.g.
wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2 
tar xf Python-2.7.3.tar.bz2
cd Python-2.7.3
./configure --prefix=/usr/local/
make && make altinstall

이렇게 하면 yum과 같은 기존 스크립트는 여전히 /usr/bin/python과 함께 작동합니다. 그리고 기본 python 버전은 /usr/local/bin에 설치된 것입니다. 즉, python을 입력하면 2.7.3을 얻을 수 있습니다.

이런 일이 생기는 이유는.$PATH 변수에 usr/bin 앞에 /usr/local/bin이 있습니다.

/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

python 2.7이 여전히 기본 python 버전으로 적용되지 않는다면 당신은 해야 할 것입니다.

export PATH="/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"

가장 간단한 접근법. 이 세 가지 명령을 사용하면 설정에 도움이 됩니다.

Python 2.x ~ 3.x

  1. python 버전 보기, 사용python --version(설치할 수 있는 것은 2.7.x입니다.)
  2. Python 3이 설치된 위치 찾기, 사용which python3(또는which pythonpython 버전의 현재 설치를 제공합니다.)
  3. 마지막 단계, 앨리어싱을 사용하고,alias python=/usr/bin/python3.6(단계 위에 하나 있음)
  4. 자, 다시 뛰어,python --version, 알게 되실 겁니다3.6.x설치된.

Python 3.x ~ 2.x (거의 동일)

  1. python 버전 보기, 사용python --version(1개는 3.6.x입니다.)
  2. Python 2가 설치된 위치 찾기, 사용which python2(which python에서는 현재 버전의 python이 설치되어 있는 위치를 보여줍니다.)
  3. 마지막 단계, 앨리어싱을 사용하고,alias python=/usr/bin/python2.7(위 단계에서 한 번 타게 됩니다)
  4. 자, 다시 뛰어,python --version, 알게 되실 겁니다2.x.x설치된.

2.7 버전은 수동으로 설치하신 것 같은데, 2.6은 패키지로 제공되는 건가요?

간단한 답은 python 패키지를 제거하는 것입니다.

더 복잡한 문제는 /usr/local에 수동으로 설치하지 않는 것입니다.2.7 버전의 패키지를 구축한 후 업그레이드합니다.

패키지 처리는 사용하는 배포물에 따라 달라집니다.

언급URL : https://stackoverflow.com/questions/19256127/two-versions-of-python-on-linux-how-to-make-2-7-the-default

반응형