복붙노트

[PYTHON] ImportError : 'encodings'라는 모듈이 없습니다.

PYTHON

ImportError : 'encodings'라는 모듈이 없습니다.

최근 우분투를 다시 설치하고 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을 여러 번 다시 설치했다. 내가 여기서 뭘 할 수 있니? 고맙습니다

해결법

  1. ==============================

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

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

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

    https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Python_3

  2. ==============================

    2.나는 Windows 10에서 python3.4를 사용하고있었습니다. 나는 python3.5를 설치했다. PYTHONPATH, PYTHONHOME 환경 변수를 찾을 수 없습니다. CMD 콘솔에서 파이썬을 명령하면, python3.4를 계속 사용합니다. 파이썬 3.4를 삭제했습니다. CMD 콘솔에서 파이썬을 명령 할 때마다 아래와 같은 오류가 표시되기 시작합니다.

    나는 Windows 10에서 python3.4를 사용하고있었습니다. 나는 python3.5를 설치했다. PYTHONPATH, PYTHONHOME 환경 변수를 찾을 수 없습니다. CMD 콘솔에서 파이썬을 명령하면, python3.4를 계속 사용합니다. 파이썬 3.4를 삭제했습니다. CMD 콘솔에서 파이썬을 명령 할 때마다 아래와 같은 오류가 표시되기 시작합니다.

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

    나는 내 문제를 찾기 위해 수색했다. 해결책은 간단했습니다. python3.5를 설치할 때, 고급 옵션의 환경 변수에 파이썬 추가를 사용자 정의 설치하고 점검 할 수 있습니다.

    나는 여기에 누군가가 비슷한 문제를 가지고있는 곳을 방문하기 위해 여기를 떠난다. 그래서 그들은 알아낼 많은 시간을 낭비하지 않는다.

  3. ==============================

    3.우분투 17.10으로 마이그레이션하는 중에이 오류가 발생하여 다음과 같은 문제가 해결되었습니다.

    우분투 17.10으로 마이그레이션하는 중에이 오류가 발생하여 다음과 같은 문제가 해결되었습니다.

    sudo dpkg-reconfigure python3
    

    어쩌면 세션을 닫고 다시 연결해야합니다.

  4. ==============================

    4.Windows 7에서 같은 문제가 발생했습니다.

    Windows 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):
    

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

    그런 다음 확인을 클릭하고 CMD 터미널로 돌아가서 python을 확인하십시오. 문제는 이제 해결되어야합니다. 그것은 나를 위해 일했습니다.

  5. ==============================

    5.나는 Windows7에서 같은 문제에 직면했다. 오류 메시지는 다음과 같습니다.

    나는 Windows7에서 같은 문제에 직면했다. 오류 메시지는 다음과 같습니다.

    저는 파이썬 2.7 (지금 제거됨)을 설치했고, 파이썬 3.6을 설치하는 동안 "고급 옵션에서 환경 변수에 파이썬을 추가"를 선택했습니다. 환경 변수 "PYTHONHOME"과 "PYTHONPATH"는 여전히 python2.7입니다.

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

  6. ==============================

    6./lib/python3.5를 보면 파이썬 라이브러리에 대한 깨진 링크가 보일 것입니다. 작업 디렉토리에 다시 작성하십시오.

    /lib/python3.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
    
  7. ==============================

    7.나는 또한 이것을 고칠 수 있었다. PYTHONPATH와 PYTHONHOME이 원인이었습니다.

    나는 또한 이것을 고칠 수 있었다. PYTHONPATH와 PYTHONHOME이 원인이었습니다.

    이것을 터미널에서 실행하십시오.

       touch ~/.bash_profile
       open ~/.bash_profile
    

    이 파일의 모든 쓸데없는 부분을 삭제하고 저장하십시오. 어떻게하는 것이 좋을지 모르겠군요!

  8. from https://stackoverflow.com/questions/38132755/importerror-no-module-named-encodings by cc-by-sa and MIT license