설치된 모듈을 가져올 수 없습니다.
기계화 설치 후 수입할 수 없을 것 같습니다.
경유로 easy_install을 .python setup.py install
다음 레포에서 https://github.com/abielr/mechanize를 참조해 주세요.Python interactive를 입력할 때마다 다음과 같은 정보가 표시됩니다.
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
>>>
이전에 실행한 설치는 정상적으로 완료되었다고 보고되었기 때문에 Import가 동작할 것으로 예상됩니다.이 에러의 원인은 무엇입니까?
저 같은 경우에는 허가 문제입니다.패키지가 root rw 권한으로만 설치되었기 때문에 다른 사용자가 rw할 수 없습니다.
저도 같은 문제가 있었습니다.★★★★★★★★★★★★★★★★★★:import colorama
ImportError를하여 ImportError를 했지만 ImportError를 했습니다.sudo pip install colorama
설치된 하드웨어'라고요.'★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」
수정사항: sudo 없이 pip 실행:pip install colorama
그 후 pip이 설치, 설치가 필요하다고 동의하고 스크립트가 실행되었습니다.
제 환경은 Ubuntu 14.04 32비트입니다.가상 환경 활성화 전후에 이미 본 것 같습니다.
업데이트: 더 나은 사용python -m pip install <package>
이 방법의 장점은 패키지를 원하는 특정 버전의 python을 실행하고 있기 때문에 pip은 패키지를 "오른쪽" python에 확실하게 설치합니다.다시 말씀드리지만, 이 경우에는 sudo를 사용하지 마십시오.그러면 적절한 위치에 패키지를 가져올 수 있지만 루트 권한이 있을 수 있습니다.
비단뱀 경로 문제예요
내 경우 python은 다음 위치에 설치되어 있습니다.
/Library/Frameworks/Python.framework/Versions/2.6/bin/python,
python2.6 에는 사이트 액세스 디렉토리가 없습니다.
pip으로 설치한 패키지(SOAPPY)가 있습니다.
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/
사이트 패키지는 python 경로에 없습니다.PYTONPATH에 사이트 패키지를 영구적으로 추가한 것뿐입니다.
터미널 열기
open .bash_profile 이라고 입력합니다.
표시되는 텍스트파일의 마지막에 다음 행을 추가합니다.
export PYTHONPATH=$PYTHONPATH:/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/
파일을 저장하고 터미널을 재시작하면 끝입니다.
저는 복합적인 접근으로 이 문제를 해결할 수 있었습니다.먼저 Chris의 조언에 따라 명령줄을 열고 'pip show packagename'을 입력하면 설치된 패키지의 위치를 알 수 있습니다.
그런 다음 python을 열고 'import sys'를 입력한 다음 'sys'를 입력합니다.path'를 클릭하면 python이 Import한 패키지를 검색하는 위치가 표시됩니다.아아, 첫 번째 단계에서 표시된 위치는 목록에 없습니다.
마지막으로 sys.path.append('package_location_seen_in_step_1')를 입력했습니다.필요에 따라서 순서 2를 반복하고, 그 위치가 리스트에 표시되고 있는 것을 확인할 수 있습니다.
테스트 단계입니다. 패키지를 다시 가져오십시오...그건 효과가 있다.
단점?이것은 일시적이며 매번 목록에 추가해야 합니다.
Python Import 메커니즘은 다음과 같이 동작합니다.
- PYTONPATH가 잘못되어 있습니다.
- 라이브러리가 생각대로 설치되어 있지 않습니다.
- 같은 이름의 다른 라이브러리가 이 라이브러리를 마스킹합니다.
저는 이 문제에 대해 한 젊은 인턴이 모듈 디렉토리 내에 "setup.py 설치"를 하는 것이 비밀이라고 말할 때까지 이 문제에 대해 머리를 부딪쳐 왔습니다.
어떤 이유에서인지 여기서 셋업을 실행하면 동작합니다.
모듈 이름이 "foo"인 경우 명확히 하기 위해:
[burnc7 (2016-06-21 15:28:49) git]# ls -l
total 1
drwxr-xr-x 7 root root 118 Jun 21 15:22 foo
[burnc7 (2016-06-21 15:28:51) git]# cd foo
[burnc7 (2016-06-21 15:28:53) foo]# ls -l
total 2
drwxr-xr-x 2 root root 93 Jun 21 15:23 foo
-rw-r--r-- 1 root root 416 May 31 12:26 setup.py
[burnc7 (2016-06-21 15:28:54) foo]# python setup.py install
<--snip-->
경로를 호출하여 다른 디렉토리에서 setup.py을 실행하려고 하면 볼록한 설치가 됩니다.
동작하지 않음:
python /root/foo/setup.py install
동작:
cd /root/foo
python setup.py install
발견하게 .sudo pip install keyring
다른 답변에서도 언급했듯이 제 경우 권한 문제입니다.
나에게 효과가 있었던 것:
- 제거된 키링:
sudo pip uninstall keyring
- 는 스도의 do' su su su를 사용했습니다.
-H
이치노
sudo -H pip install keyring
PyCharm에서는 프로젝트 인터프리터 경로를 변경하여 이 문제를 해결했습니다.
File -> Settings -> Project -> Project Interpreter
File -> Invalidate Caches…
나중에 필요할 수 있습니다.
PYTONPATH의 경우나는 더하는 것을 깨달았다.export
문제를 해결했습니다.
(작업 완료)
export PYTHONPATH=$PYTHONPATH:~/test/site-packages
대.
(작동하지 않았다)
PYTHONPATH=$PYTHONPATH:~/test/site-packages
내게 효과가 있었던 건
python -m pip install -user {package name}
명령어에는 sudo가 필요하지 않습니다.이것은 OSX 모하비에서 테스트되었습니다.
이 솔루션이 모두에게 적용되는 것은 아닙니다.특정 액션을 수행한 특정 신입사원(Like Me)에게만 해당됩니다.위의 답변 중 어느 것도 나에게는 통하지 않았다.
문제의 원인:이전에 루트 내부에 venv를 설치하는 프로젝트를 진행했습니다.나중에 새 사용자를 만들고 이 사용자에게 프로젝트를 이동하기로 결정했습니다.소스 파일만 이동하거나 의존관계를 새로 설치하는 대신 venv 폴더와 함께 프로젝트 전체를 새 사용자에게 이동했습니다(이러한 문제를 몰랐기 때문입니다).그 후, 인스톨 한 의존 관계가,global site-packages
venv 폴더 안에 있는 거 말고따라서 이 환경 내에서 실행되는 코드는 이러한 종속성에 액세스할 수 없었습니다.
솔루션:방금 venv 폴더를 삭제하고 다시 만들었습니다.
$ deactivate
$ rm -rf venv
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
.pip install Django==1.11
Import에서 .python
★★★★★★★★★★★★★★★★★★.
하다 ""을 .pip show
이렇게 생겼죠.
> pip show Django
Name: Django
Version: 1.11
...
Location: /usr/lib/python3.4/site-packages
...
'3.4'로 하겠습니다.는 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.python
linked령령가 to to to to to에 되었습니다.python2.7
/usr/bin> ls -l python
lrwxrwxrwx 1 root root 9 Mar 14 15:48 python -> python2.7
옆에 있는 에 '아예'라는 링크가 .python3
그래서 그걸 썼어요. 수 요.python3.4
그렇게 하면 고칠 수 있을 거야
제 경우 Python 2.7 환경에서 Import하고자 했던 모듈에 init.py 파일이 없는 것이 문제였습니다.
Python 3.3+에는 Implicit Namespace Package가 있어 init.py 파일 없이 패키지를 만들 수 있습니다.
pip에서 colorama를 설치했는데 "ImportError: No module name colorama"라는 메시지가 표시됨
그래서 "find"로 검색하여 절대 경로를 찾아 스크립트에 다음과 같이 추가했습니다.
import sys
sys.path.append("/usr/local/lib/python3.8/dist-packages/")
import colorama
그리고 그것은 성공하였다.
도 같은하고 있습니다.setuptools
움이::::::
python3 -m pip install --upgrade pip setuptools wheel
그 후 패키지를 재설치하면 정상적으로 동작합니다.
한 것은,입니다.setuptools
래된것것 것것것다다
그 외의 답변으로 문제가 해결되지 않는 경우는, pip 캐시를 삭제하고, 패키지를 재인스톨 해 주세요. 기계는 를 실행하고 , Ubuntu14.04의 .~/.cache/pip
이 폴더를 삭제한 것이 효과가 있었습니다.
또, 동, 동, 동을 혼동하지 않도록 주의해 주세요.pip3
pip
가 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.pip
와 함께 작동하지 않았습니다.python3
그리고 부차관.
이런 문제도 있었고..패키지가 Python 3.8.0에 설치되었지만 VS Code가 이전 버전(3.4)을 사용하여 스크립트를 실행하고 있었습니다.
터미널에서 수정:
py.py
패키지를 올바른 Python 버전에 설치하고 있는지 확인합니다.
(Windows에서도) 비슷한 문제가 발생했는데, 그 근본 원인은 안티바이러스 소프트웨어였습니다.실행 중인 프로세스를 일종의 가상 시스템으로 래핑하는 "자동 억제" 기능이 있습니다.증상은 다음과 같습니다.pip install somemodule
행 과 1 cm 행으로 합니다.import somemodule
합니다.
ModuleNotFoundError: No module named 'somemodule'
내 경우(WIN10 호스트의 Ubuntu 20.04 VM) 많은 버전의 Python과 공유 라이브러리의 Variuos 포인트(파일 시스템의 많은 포인트에 pip이 설치됨)에서 장애가 발생했습니다.3.8.10 Python 버전을 말하는 것입니다.많은 테스트를 거친 후 구글에서 검색한 제안서를 찾았습니다('죄송합니다만, 링크가 없습니다').이 문제를 해결하기 위해 다음과 같이 했습니다.
Ubuntu 20.04 VM의 셸 세션(내 경우 /home/hduser)에서 "jupyter notebook" 명령을 사용하여 Jupyter 노트북 세션을 시작했습니다.
그런 다음 주피터가 실행 중일 때 명령을 내리기 위해 .ipynb 파일을 열었습니다.
첫 번째 : pip list --> 설치되어 있는 패키지의 목록을 주세요.그러나 sympy는 존재하지 않습니다(「sudo pip install sympy」명령어로 설치했습니다).
마지막으로!pip3 install sympy (노트북 세션 내) 문제를 해결했습니다.스크린샷은 다음과 같습니다.
여기서 !pip list를 사용하면 패키지 "sympy"가 존재하며 다음과 같이 동작합니다.
를 경유하여 하는 경우easy_install
★★★★★★★★★★★★★★★★★」pip
으로 완료되고 대대출 ?력 ?? ????python 설설를 용용 용? ?? ??? 하면 '어울리지 않다'를 써야 할 도 있어요.sudo
시스템 디렉토리에 모듈을 설치하는 경우(시스템 python 설치를 사용하는 경우).질문에는 유용한 정보가 많지 않지만 다음과 같은 유용한 도구가 있습니다.
echo $PYTHONPATH
"/"/"echo $PATH
때중 : "Import" "Python" " " 。:
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★Import 문제는 때문에 합니다.which python
,which pip
, 「」which easy_install
각 파일의 를 알 수 각 실행 파일의 위치를 알 수 있습니다.알아두면 도움이 될 거야.@JeseBriggs가 제안하는 바와 같이 virtualenv를 사용합니다.와 매우 잘 어울립니다.
pip
개별 Python 프로젝트의 모듈과 환경을 분리 및 관리할 수 있도록 지원합니다.
저는 이 문제를 정확히 안고 있었지만, 위의 답변 중 어느 것도 효과가 없었습니다.상위 프로젝트에서 Import한 후 sys.path가 다르다는 것을 알게 될 때까지 미칠 것 같았습니다.프로젝트 계층에 없는 파일을 Import하기 위해 importlib을 사용하여 작은 함수를 작성했습니다.나쁜 생각:내가 이걸 했다는 걸 잊고 있었어.게다가 Import 프로세스는 sys.path와 중복되어 그대로 방치되어 있었습니다.아주 나쁜 생각이야.
해결책은 그것을 중지하고, Import에 필요한 파일을 프로젝트에 넣는 것이었습니다.또 다른 접근법은 파일을 자체 프로젝트에 넣는 것입니다.이는 파일을 때때로 재구축해야 하기 때문입니다.또한 재구축은 메인 프로젝트의 재구축과 일치하거나 일치하지 않을 수도 있습니다.
Python-Telegram-Bot으로 텔레그램봇을 테스트하려다 시스템에 2.7과 3.5가 설치되어 문제가 발생하였습니다.
pip과 pip3를 탑재한 후 sudo를 탑재한 경우와 사용하지 않은 경우 모두 동작하지 않았습니다.항상 얻을 수 있는 것:
Traceback (most recent call last):
File "telegram.py", line 2, in <module>
from telegram.ext import Updater
File "$USER/telegram.py", line 2, in <module>
from telegram.ext import Updater
ImportError: No module named 'telegram.ext'; 'telegram' is not a package
에서 python을 을 알 수 .telegram.py
저는py이라는 , 가 리고 telegram 전보를 때 되어 있었습니다py이라는 스크립트가 놓여 있었는데, 제가 전화를 걸었을 때 python에 의해 로딩되어 있었습니다.import
.
.package.py
( 「 」 오 ( 」 )
저도 장고를 쓰는데 비슷한 문제가 있었어요.Import.py. Import.장고 Import.
문제는 모듈이 설치된 다른 가상환경에서 Django 서버(따라서 .py 실행)를 실행하고 있다는 것입니다.
대신 셸 인스턴스는 올바른 virtualenv에서 실행되고 있었습니다.그래서 왜 효과가 있었는지.
이 기능은 유효합니다!!
이것은 모듈이 이전 버전의 python이나 다른 디렉토리에 설치되었을 때 자주 발생합니다.솔루션은 간단하기 때문에 걱정 없습니다.- 모듈이 설치되어 있는 디렉토리에서 모듈을 Import합니다. python python Import를 됩니다.sys
.
import sys
sys.path.append("directory in which module is installed")
import <module_name>
생각할 수 있는 케이스의 대부분은 이미 솔루션에서 취급되고 있습니다.예를 들어, 예를 들면, 1개의 환경에 패키지를 인스톨 했을 뿐입니다(예:X
ImportY
따라서 패키지를 설치한 환경에서 패키지를 Import해야 합니다.
제가 사용하던 Python의 버전에 맞춰진 모듈의 버전을 확인하고 있었습니다.Python 3.6이 설치된 박스에 이미지를 만들고 Docker 이미지에 주입했습니다. 그리고 Python이 모듈이 설치되지 않았다고 말했을 때 머리를 찧었습니다.
36m
.6 Python 3.6 »bsonnumpy.cpython-36m-x86_64-linux-gnu.so
37m
.7 Python 3. »bsonnumpy.cpython-37m-x86_64-linux-gnu.so
이것은 매우 오래된 포스트라는 것을 알고 있습니다만, 저는 32비트 python과 64비트 python이 설치되어 있는 것에 문제가 있었습니다.32비트 python을 제거하자 모든 것이 정상 작동했습니다.
한 프로젝트(A)에서는 같은 라이브러리가 정상적으로 동작하고 있었지만, 다른 프로젝트(B)에서는 같은 라이브러리를 Import 하는 것이 에러의 원인이 되어 문제가 해결되었습니다.Windows OS에서 Pycharm을 IDE로 사용하고 있습니다.여러 가지 잠재적인 해결책을 시도했지만 문제를 해결하지 못한 후 다음 두 가지 작업을 수행했습니다('Venv' 폴더 삭제 및 인터프리터 재구성).
1-프로젝트(B)에서는 외부 라이브러리/에 ("venv")라는 폴더가 있습니다.나는 그 폴더를 삭제했다.
2-Step 1 ("venv" 폴더를 삭제하면 Python Interpreter Configuration에서 오류가 발생하며, 화면 상단에 "Invalid python interpreter selected for the project" 및 "configure python interpreter"라는 메시지가 표시되고 해당 링크를 선택하면 새 창이 열립니다."프로젝트 인터프리터" 드롭다운 목록에 빨간색 줄이 표시되어 이전에 유효하지 않은 인터프리터를 나타냅니다.이제 이 목록을 열고 Python Interpreter(내 경우 Python 3.7)를 선택합니다.하단에 있는 "적용"과 "확인"을 누르면 준비가 완료됩니다.
주의: 이는 잠재적으로 프로젝트의 가상환경(B)이 이미 설치되어 동작하고 있는 라이브러리를 인식하지 못하는 문제일 수 있습니다.
를 사용합니다.pipenv install <module name>
pip install <module name>
나한테는 통했어
언급URL : https://stackoverflow.com/questions/14295680/unable-to-import-a-module-that-is-definitely-installed
'programing' 카테고리의 다른 글
두 이미지 간의 차이를 수량화하려면 어떻게 해야 합니까? (0) | 2022.12.26 |
---|---|
vue-material: 알 수 없는 커스텀 컴포넌트 md-md-content (0) | 2022.12.26 |
Java 서블릿의 POST 요청에서 요청 페이로드 가져오기 (0) | 2022.12.26 |
팬더에서 플로트를 ints로 변환? (0) | 2022.12.26 |
vuejs2에서 "사용자 입력 중지 후 양식 제출"을 수행하는 방법 (0) | 2022.12.26 |