programing

가져오기 오류: 'encodings'라는 이름의 모듈이 없습니다.

bestprogram 2023. 5. 27. 12:05

가져오기 오류: 'encodings'라는 이름의 모듈이 없습니다.

나는 최근에 unbu를 다시 설치했고 16.04로 업그레이드했고 파이썬을 사용할 수 없습니다.

$ python manage.py runserver
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Aborted

이 시점에서 파이썬 자체는 작동하지 않습니다.

$ python
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Aborted

이 제안도 더 이상 효과가 없습니다.

unset PYTHONHOME
unset PYTHONPATH

제가 한 가지 방법으로 고칠 때마다, 그것은 다시 돌아옵니다.몇 가지 대답은 일시적으로 해결하는 데 도움이 되지만, 좋은 결과는 아닙니다.저는 python과 python3를 여러 번 다시 설치했습니다.여기서 무엇을 할 수 있습니까?

Python-3의 경우 가상 환경 파일을 제거해 보십시오.그리고 그것을 다시 설정합니다.

rm -rf venv
virtualenv -p /usr/bin/python3 venv/
source venv/bin/activate
pip install -r requirements.txt

https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Python_3 편집 fo

Windows 10 사용자의 경우.

윈도우 10에서 파이썬 3.4를 사용하고 있었습니다.저는 python 3.5를 설치했습니다.PYTHONPATH, PYTHONHOME env 변수를 찾을 수 없습니다.CMD 콘솔에서 python을 명령하면 python3.4를 계속 사용했습니다.저는 python 3.4를 삭제했습니다.CMD 콘솔에서 python을 명령할 때마다 아래와 같은 오류가 나타납니다.

Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'

저는 제 문제를 알아내기 위해 검색했습니다.솔루션은 간단했습니다.python 3.5를 설치할 때 사용자 지정 설치를 수행하고 고급 옵션에서 환경 변수에 Python 추가를 선택할 수 있습니다.

저는 단지 비슷한 문제를 가진 사람이 이곳을 방문할 경우를 대비해 이곳을 떠나는데, 이는 그들이 그들의 소중한 시간을 많이 낭비하지 않기 위해서입니다.

Windows 7에서도 동일한 문제에 직면했습니다.오류 메시지는 다음과 같습니다.

Fatal Python error: Py_Initialize: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'

Current thread 0x000011f4 (most recent call first):

저는 python 2.7을 설치했고(지금은 제거), python 3.6을 설치하면서 "Advanced Options의 환경 변수에 python 추가"를 확인했습니다.환경 변수 "PYthonHOME" 및 "PYthonPATH"는 여전히 python2.7인 것으로 나타났습니다.

마지막으로 "PYthonHOME"을 python3.6 설치 경로로 수정하고 변수 "PYthonPATH"를 제거하여 해결했습니다.

Windows 7(윈도우 7)에서 동일한 문제에 대해

환경 변수/시스템 변수가 잘못 설정된 경우 다음과 같은 오류가 표시됩니다.

Fatal Python error: Py_Initialize: unable to load the file system codec
ImportError: No module named 'encodings'

Current thread 0x00001db4 (most recent call first):

이 문제를 해결하는 것은 매우 간단합니다.

  1. Python 3.x 버전을 다운로드하고 .exe 파일을 실행하면 시스템에서 Python을 설치할 위치를 사용자 지정하는 옵션이 제공됩니다.예를 들어 다음 위치를 선택했습니다.C:\프로그램 파일\파이썬36

  2. 그런 다음 시스템 속성을 열고 "고급" 탭으로 이동합니다(또는 간단하게 시작으로 이동 > "환경 변수" 검색 > "시스템 환경 변수 편집" 클릭)."고급" 탭에서 "환경 변수"를 찾아 클릭합니다.이름이 "환경 변수"인 다른 창이 나타납니다.

  3. 이제 사용자 변수에 "경로 변수"에 나열된 올바른 Python 경로가 있는지 확인합니다.여기 예에서는 C:\Program Files\표시됩니다.파이썬36.경로 변수 필드가 없으면 경로 변수 필드를 선택하고 편집을 클릭하여 추가합니다.

  4. 마지막 단계는 동일한 창에서 System Variables 아래의 PYONHOME 및 PYONPATH 필드를 두 번 확인하는 것입니다.위에서 설명한 것과 동일한 경로가 표시됩니다.거기에 그것을 추가하지 않으면 안 됩니다.

그런 다음 확인을 클릭하고 CMD 터미널로 돌아가서 파이썬을 확인해 보십시오.이제 문제가 해결되어야 합니다.그것은 나에게 효과가 있었다.

Ubuntu 17.10으로 마이그레이션하는 동안 이 오류가 발생했으며 이로 인해 문제가 해결되었습니다.

sudo dpkg-reconfigure python3

세션을 닫고 다시 연결해야 할 수도 있습니다.

/lib/python 3.5를 보면 파이썬 라이브러리에 대한 링크가 끊어진 것을 볼 수 있습니다.작업 디렉토리에 다시 작성합니다.

다음 오류 -

./script/bin/pip3
Failed to import the site module
Traceback (most recent call last):
  File "/home/script/script/lib/python3.5/site.py", line 703, in <module>
    main()
  File "/home/script/script/lib/python3.5/site.py", line 683, in main
    paths_in_sys = addsitepackages(paths_in_sys)
  File "/home/script/script/lib/python3.5/site.py", line 282, in addsitepackages
    addsitedir(sitedir, known_paths)
  File "/home/script/script/lib/python3.5/site.py", line 204, in addsitedir
    addpackage(sitedir, name, known_paths)
  File "/home/script/script/lib/python3.5/site.py", line 173, in addpackage
    exec(line)
  File "<string>", line 1, in <module>
  File "/home/script/script/lib/python3.5/types.py", line 166, in <module>
    import functools as _functools
  File "/home/script/script/lib/python3.5/functools.py", line 23, in <module>
    from weakref import WeakKeyDictionary
  File "/home/script/script/lib/python3.5/weakref.py", line 12, in <module>
    from _weakref import (
ImportError: cannot import name '_remove_dead_weakref'

이렇게 고정 - https://askubuntu.com/questions/907035/importerror-cannot-import-name-remove-dead-weakref

cd my-virtualenv-directory
virtualenv . --system-site-packages

저는 모든 것을 시도했고, PYTHONPATH와 PYTHONHOME을 삭제했습니다. 오류가 사라지지 않았습니다.VirtualHost의 wsgi 구성에서 WSGIDaemonProcess에서 python-home 경로를 지정한 것을 간과했습니다.저는 그것을 제거했고 오류가 사라졌습니다.

는 삭습니다를 삭제했습니다.rm -r /usr/lib/python*

dpkg -S '/usr/lib/python3*' | grep encodings

그리고 나는 필요하다는 것을 발견했습니다.libpython3.10-minimal

sudo apt-get install --reinstall libpython3.10-minimal

나는 마침내 달렸습니다.

sudo apt-get install --reinstall $(dpkg -S '/usr/lib/python3*' | cut -d ':' -f1 | cut -d ',' -f1 | sort | uniq | tr '\n' ' ')
sudo apt-get install --reinstall $(dpkg -S '/usr/lib/python2*' | cut -d ':' -f1 | cut -d ',' -f1 | sort | uniq | tr '\n' ' ')

파일을 삭제한 모든 패키지를 다시 설치하려면 다음과 같이 하십시오.

때 macOS를 사용할 .pipenv는 Pipenv를 생성하고 합니다.virtualenv따라서 @Anoop-Malav의 이전 제안은 pipenv를 사용하여 현재 dir를 기반으로 가상 환경을 제거하고 재설정하는 것과 동일합니다.

pipenv --rm
pipenv shell  # recreate a virtual env with your current Pipfile

macOS Catalina로 업데이트한 후 "ModuleNotFoundError: 'encodings'라는 이름의 모듈이 없습니다.

시스템에 여러 버전의 Python이 설치되어 있었습니다.

macOS 시스템에서 모든 python 버전(2.7 및 3.7.4)을 제거하고 최신 python 3.8을 다시 설치하는 것이 저에게 효과가 있었습니다.

macOS에서 파이썬을 제거하기 위해, 저는 여기의 지침을 따릅니다. macOS X 10.6.4에서 파이썬 2.7을 제거하는 방법은 무엇입니까?

위 링크는 python 2.7용이지만 3.7에도 동일하게 사용할 수 있습니다.

제 경우에는 aconda 폴더의 권한만 변경해도 작동했습니다.

sudo chmod -R u=rwx,g=rx,o=rx /path/to/anaconda   

MySql Workbench 8.0을 macOS Catalina 10.15.3에서 실행하려고 할 때 이 오류가 발생했습니다.

시스템에 Python 3.7을 설치하여 이 문제를 해결했습니다.

향후 Workbench의 버전이 8 이상이 될 경우 Python의 최신 버전이 필요할 것으로 예상됩니다.오류에서 라이브러리 경로만 보면 필요한 버전을 찾을 수 있습니다.

저도 비슷한 문제가 있었습니다.컴퓨터에 아나콘다와 파이썬을 둘 다 설치했고 내 파이썬 의존성은 아나콘다 디렉터리에서 나왔습니다.아나콘다를 제거했을 때 이 오류가 발생하기 시작했습니다.추가했습니다.PYTHONPATH하지만 여전히 가지 않았습니다.확인했습니다.python -version아직 아나콘다의 길을 걷고 있다는 것을 알게 될 것입니다.나는 아나콘다3 디렉토리를 수동으로 삭제해야 했고 그 후 파이썬은 종속성을 취하기 시작했습니다.PYTHONPATH.
문제 해결!

이것이 구글의 첫 번째 결과이기 때문에 저는 감옥에 문제가 있는 다른 사람들을 위해 다음 정보를 추가하고 싶습니다.

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007f079b16d740 (most recent call first):
Aborted (core dumped)

감옥으로 파이썬을 가져오려면 둘 다 종속성과 /usr/lib/pythonX를 연결해야 합니다.Y to [JAIL]/usr/lib/.이게 도움이 되길 바랍니다.

저는 데비안 서버에서 동일한 문제에 직면하고 있었고, 저에게 문제는 제 프로젝트를 내부에 넣었다는 것이었습니다./root/mod_wsgi에 액세스 권한이 없는 폴더입니다.그래서 저는 제 프로젝트를 로 옮겼습니다./var/www/html/가상 호스트 구성을 업데이트합니다.

저의 경우, 다음과 같이 작동했습니다.회의에서 env 경로를 변경했습니다./home/vinzee/.pyenv/versions/envname/bin/로./home/vinzee/.pyenv/versions/envname/그리고 그것은 성공하였다.

환경 경로는 가상 환경의 루트 폴더에 대한 경로여야 하며 가상 환경의 루트 폴더에 대한 경로여야 합니다.ROOT_VENV/bin/).

다른 사람들이 제안한 것처럼 후행 슬래시를 사용하지 않고 추가로 시도할 수 있지만, 저의 경우 슬래시 사용 여부와 상관없이 작동했습니다.

이 오류는 다양한 이유로 인해 발생할 수 있습니다(여기에 나와 있는 답변의 수를 고려할 때).

저에게 문제는 애플리케이션이 가상 환경에 구축되었다는 사실과 관련이 있었습니다.pyvenv.cfg파일에 잘못된 권한이 있습니다.uwsgi가 실행 중인 사용자가 쓰기 가능해야 합니다(내 경우에는http).

그냥 File -> Settings -> Project 탭에서 Project Interpreter 선택 -> small gear 아이콘 클릭 -> Add -> System Interpreter -> 드롭다운 메뉴에서 원하는 python 버전 선택

이것은 나에게 효과가 있는 것처럼 보였습니다.

제가 고칠 수도 있어요.PYTHONPATH 및 PYTHONHOME이 원인입니다.

터미널에서 실행합니다.

   touch ~/.bash_profile
   open ~/.bash_profile

그런 다음 이 파일의 쓸모없는 부분을 모두 삭제하고 저장합니다.그렇게 하는 것이 얼마나 권장되는지 모르겠습니다!

언급URL : https://stackoverflow.com/questions/38132755/importerror-no-module-named-encodings