“python3”과“python”은 다른 경로 변수를 사용합니까?


9

이 명령 python은 Python 2.7.6 환경을 엽니 다. Python 3 스크립트를 해석하려면에 명령을 다시 작성해야합니다 python3.

방금 numpy 패키지를 설치했습니다 . 성공적인 설치를 테스트하기 위해 명령을 실행합니다 import numpy. python명령을 사용할 때 잘 작동합니다 . 그러나 python3패키지를 찾지 못했습니다.

이것이 어떻게 가능한지? 이 두 명령이 다른 경로 변수를 사용합니까? 동작을 어떻게 변경할 수 있습니까?


관련이
Trevor Boyd Smith

답변:


9

당신은 절대적으로 맞습니다, 그들은 다른 PYTHONPATHs 를 사용 합니다.

Python 2.x와 Python 3.x는 완전히 다른 프로그래밍 환경으로 생각할 수 있습니다. 그렇습니다. 패키지를 다른 위치에 저장합니다.

numpy가 작동하도록하려면 다음을 입력하십시오.

sudo apt-get install python3-numpy

정확히 패키지가 보관 된 위치를 찾으려면 모듈 객체 __path__속성을 볼 수 있습니다 .

>>> import numpy
>>> numpy.__path__
['/usr/local/lib/python3.5/site-packages/numpy']

Ubuntu에서 사용할 수없는 패키지의 경우 Pip으로 Python 3 용 패키지를 설치 python3-pip한 다음 설치 하여 실행할 수도 있습니다 .pip3 install whateverpython3-whatever

distutils, setuptools, easy_install, pip와 나머지의 차이점에 대해 혼란 스러우면 pip를 사용하십시오. 멋진 것입니다. :)


2
다른 PYTHONPATH를 사용하지 않지만 python2는 $ PREFIX / lib / python2 *의 패키지 만 사용하고 python3은 $ PREFIX / lib / python3 *의 패키지 만 사용합니다.
dalloliogm

4

아니요, 그들은 같은 것을 사용합니다 PATH. 그러나 문제는하지입니다 PATH.

파이썬 2와 파이썬 3은 패키지가 둘 다 개별적으로 작성되어야하므로 충분히 다릅니다. 하나를 위해 작성된 패키지는 다른 패키지와 함께 사용할 수 없습니다.

우분투에서이 모듈들은 서로 다른 위치에 저장되어 있으며 python-numpy파이썬 2, python3-numpy파이썬 3을 위해 별도로 패키지되어 python3-numpy있습니다. 파이썬 3과 함께 numpy를 원한다면 설치하십시오 .

$ python3 -c 'import sys; print (sys.path)'
['', '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/lib-dynload', '/home/muru/.local/lib/python3.4/site-packages', '/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages']
$ python2 -c 'import sys; print (sys.path)'
['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client']

3

실제로 둘 다 다른 위치에서 모듈을 가져오고 있습니다.

  • 파이썬 2.7 : /usr/lib/python2.7/dist-packages/numpy/
  • Python3.x : /usr/lib/python3/dist-packages/numpy/

numpy두 운영체제와 함께 가져 오려면 해당 패키지를 설치하십시오.

  • 파이썬 2.7 : sudo apt-get install python-numpy
  • Python3.x : sudo apt-get install python3-numpy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.