2013-06-13 4 views
2

Windows에서 Linux (Ubuntu)로 전환하여 파이썬 프로그램을 작성하고 싶습니다. 그러나 작동시킬 수 없습니다. 문제는 다음과 같습니다. 우분투에 모듈이 미리 설치되어 있다는 것을 알 수 있습니다 (예 : numpy, pandas, matplotlib 등). 그들은/host/Python27/Lib/site-packages 디렉토리에 멋지게 앉아 있습니다. 하지만 테스트 파이썬 스크립트를 작성하고 실행하려고하면 모듈을 가져올 때마다 내게 ImportError를줍니다 (예를 들어 import numpy as npImportError: No module named numpy입니다). 명령 줄에 which python을 입력하면 /usr/bin/python 경로가 표시됩니다. 나는 파이썬 경로와 관련된 것들을 바꿀 필요가 있다고 생각하지만, 어떻게 해야할지 모르겠다.모듈을 설치하는 동안 Python ImportError가 발생합니다. [Ubuntu]

답변

8

터미널에서 다음 명령을 사용하여 PYTHONPATH에 어떤 폴더가 있는지 확인할 수 있습니다. 나는 늘 (당신이 패키지를 설치 했는가. 보통의 파이썬 경로 같은 소리하지 않는 이유는 무엇입니까?) 거기에있을 /host/Python27/Lib/site-packages을 추측하고있어

python -c "import sys, pprint; pprint.pprint(sys.path)" 

.

다음 PYTHONPATH 후 사용하여 폴더를 추가하려면 :

  1. 사용 virtualenv :

    개인적으로 여기
    export PYTHONPATH=$PYTHONPATH:/host/Python27/Lib/site-packages 
    

    파이썬으로 개발하기위한 몇 가지 권장 사항입니다. 그것은 샌드 박스 파이썬 환경을 생성하는 매우 강력한 도구이므로 모듈을 설치하고 메인 인터프리터와 별도로 유지할 수 있습니다.

  2. 사용 virtualenv을 생성하고 활성화 한 경우 pip install을 사용하여 패키지를 설치할 수 있습니다. 예 : pip install numpy은 numpy를 가상 환경에 설치하며이 virtualenv에서만 액세스 할 수 있습니다. 이것은 테스트 등을 위해 다른 버전을 설치할 수 있음을 의미합니다. 매우 강력합니다. 나는 최신 버전의 파이썬 라이브러리를 패키징하는 사람에게 의존하며 (apt-get) pip과 같이 많은 라이브러리를 사용할 수 없을 수도 있으므로, pip을 사용하여 파이썬 패키지를 우분투 apt-get install을 사용하여 설치하는 것이 좋습니다.).

  3. 실행 파일 (chmod +x my_python_script.py)을 만들 파이썬 스크립트를 작성할 때 #!/usr/bin/env python을 맨 위에두면 가상 환경에서 파이썬 인터프리터가 선택됩니다. 만약 당신이 (그리고 #!/usr/bin/python 넣어) ./my_python_script.py 실행 항상 시스템 파이썬 인터프리터를 사용합니다.

+0

우분투가 새로 설치 한 후에도 Python 패키지를 직접 설치하지 않았기 때문에 패키지가 우분투에서 설치되었다고 생각합니다. 나는'/ host/...'경로를 PYTHONPATH에 추가하려고했지만, 여전히 모든 종류의 의존성을 찾을 수 없다. 나는 대신'virtualenv'를 사용하여 작동하는지 확인하려고합니다. 답장을 보내 주셔서 감사합니다. – MPA

1

/host/Python27/Lib/site-packages은 내가 알고있는 한 리눅스 설치시 기본 파이썬 디렉토리가 아닙니다.

일반적인 파이썬 설치 (및 파이썬 패키지)는 프로세서 아키텍처에 따라 /usr/lib 또는 /usr/lib64이어야합니다. 당신은 다음과 같은 명령으로 터미널을 사용할 수있는 파이썬은이 디렉토리에 추가로 검색되어 있는지 확인하려면

다음 /host/Python27/Lib/site-packages 경로가 표시되지 않으면

echo $PYTHONPATH 

는 시도가 다음 명령을 사용하고 다시 시도 :

export PYTHONPATH=$PYTHONPATH:host/Python27/Lib/site-packages 

를이 일을해야하고 터미널에서 당신은 단순히,이 패키지를 사용하여 home FOL에 .bashrc라는 파일에 넣어 할 때마다이를 작성하지 않으려면 der (보통 /home/<username>).

관련 문제