티스토리 뷰

반응형

Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.

Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.

 

아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.

Unable to import a module that is definitely installed

확실히 설치된 모듈을 가져올 수 없습니다.

 문제 내용 

After installing mechanize, I don't seem to be able to import it.

mechanize를 설치한 후 import가 불가능할 것 같습니다.

 

I have tried installing from pip, easy_install, and via python setup.py install from this repo: https://github.com/abielr/mechanize. All of this to no avail, as each time I enter my Python interactive I get:

저는 pip, easy_install 및 python setup.py 설치를 통해 repo: https://github.com/abielr/mechanize에서 설치를 시도했습니다. 이 모든 것이 아무 소용이 없습니다. Python 대화형 창에 들어갈 때마다 다음과 같은 결과를 얻습니다.
Python 2.7.3 (default, Aug  1 2012, 05:14:39) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mechanize
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named mechanize
>>> 

 

The installations I ran previously reported that they had completed successfully, so I expect the import to work. What could be causing this error?

이전에 실행한 설치에서 성공적으로 완료되었다고 보고했으므로 import가 작동할 것으로 예상합니다. 이 오류의 원인은 무엇입니까?

 

 

 

 높은 점수를 받은 Solution 

In my case, it is permission problem. The package was somehow installed with root rw permission only, other user just cannot rw to it!

제 경우에는 허가 문제입니다. 패키지가 root rw 권한으로만 설치되었습니다. 다른 사용자는 패키지로 이동할 수 없습니다!

 

 

 

 가장 최근 달린 Solution 

This problem can also occur with a relocated virtual environment (venv).

재배치된 가상 환경(venv)에서도 이 문제가 발생할 수 있습니다.

 

I had a project with a venv set up inside the root directory. Later I created a new user and decided to move the project to this user. Instead of moving only the source files and installing the dependencies freshly, I moved the entire project along with the venv folder to the new user.

나는 루트 디렉토리 내에 venv가 설정된 프로젝트를 가지고 있었다. 나중에 새 사용자를 생성하고 프로젝트를 이 사용자로 이동하기로 결정했습니다. 소스 파일만 이동하고 종속성을 새로 설치하는 대신 프로젝트 전체를 venv 폴더와 함께 새 사용자로 이동했습니다.

 

After that, the dependencies that I installed were getting added to the global site-packages folder instead of the one inside the venv, so the code running inside this env was not able to access those dependencies.

그 후 내가 설치한 종속성이 venv 내부의 종속성 대신 글로벌 site-packages 폴더에 추가되어 이 env 내부에서 실행 중인 코드가 종속성에 액세스할 수 없었습니다.

 

To solve this problem, just remove the venv folder and recreate it again, like so:

이 문제를 해결하려면 다음과 같이 venv 폴더를 제거하고 다시 생성하십시오.
$ deactivate
$ rm -rf venv
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt

 

 

출처 : https://stackoverflow.com/questions/14295680/unable-to-import-a-module-that-is-definitely-installed

반응형
댓글
공지사항
최근에 올라온 글