No module named encodings pycharm как исправить

I keep getting: ModuleNotFoundError: No module named 'encodings' in the unit error logs when trying to add new configuration. Fatal Python error: Py_Initialize: Unable to get the locale enc...

@mar0x Thank you for your reply. I hope my answers below can help you understand more

  1. Exact OS
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04 LTS
Release:	20.04
Codename:	focal
  1. Unit version
unit version: 1.26.1
configured as ./configure --prefix=/usr --state=/var/lib/unit --control=unix:/var/run/control.unit.sock --pid=/var/run/unit.pid --log=/var/log/unit.log 
--tmp=/var/tmp --user=unit --group=unit --tests --openssl --modules=/usr/lib/unit/modules --libdir=/usr/lib/x86_64-linux-gnu --cc-opt='-g -O2 
-fdebug-prefix-map=/data/builder/debuild/unit-1.26.1/pkg/deb/debuild/unit-1.26.1=. -specs=/usr/share/dpkg/no-pie-compile.specs 
-fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --ld-opt='-Wl,-Bsymbolic-functions 
-specs=/usr/share/dpkg/no-pie-link.specs -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'
  1. Unit installation method
    I followed these instructions here

  2. I start unit like:

sudo systemctl restart unit
  1. ENV
SHELL=/bin/bash
PWD=/home/ubuntu/mainly-ui/venv
LOGNAME=ubuntu
XDG_SESSION_TYPE=tty
MOTD_SHOWN=pam
HOME=/home/ubuntu
LANG=C.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
VIRTUAL_ENV=/home/ubuntu/mainly-ui/venv
LC_TERMINAL=iTerm2
SSH_CONNECTION=85.24.210.114 52919 172.26.5.212 22
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
TERM=xterm-256color
LESSOPEN=| /usr/bin/lesspipe %s
USER=ubuntu
LC_TERMINAL_VERSION=3.4.15
SHLVL=1
XDG_SESSION_ID=1062
LC_CTYPE=C.UTF-8
XDG_RUNTIME_DIR=/run/user/1000
PS1=(venv) [e]0;u@h: wa]${debian_chroot:+($debian_chroot)}[33[01;32m]u@h[33[00m]:[33[01;34m]w[33[00m]$
SSH_CLIENT=85.24.210.114 52919 22
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
PATH=/home/ubuntu/mainly-ui/venv/bin:/home/ubuntu/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
SSH_TTY=/dev/pts/0
OLDPWD=/home/ubuntu/mainly-ui
_=/usr/bin/printenv
  1. Application configuration:
{
	"listeners": {
		"127.0.0.1:80": {
			"pass": "routes"
		},

		"*:443": {
			"pass": "routes",
			"tls": {
				"certificate": "certbot2"
			}
		}
	},
	"routes": [ {
	  "match": {
		"uri": [
			"/api/*",
			"/docs",
			"/docs/*",
			"/openapi.json"
		 ]
		},
	  "action": {
		  "pass": "applications/miranda_webservices"
		}
	},
	{
	  "match": {
		  "uri" : "*"
	  },
	  "action": {
		  "share" : "/home/ubuntu/mainly-ui/frontend/out/$uri",
			"fallback": {
				"share": "/home/ubuntu/mainly-ui/frontend/out/index.html"
			}
	  }
	}
	],

	"applications": {
		"miranda_webservices": {
			"type": "python",
			"path": "/home/ubuntu/mainly-ui/webservice/",
			"home": "/home/ubuntu/mainly-ui/venv",
			"module": "main",
			"protocol": "asgi",
			"callable": "app",
			"environment": {
				"WEBSERVICE_CONFIG_FILE": "/home/ubuntu/webservice_config.yml",
				"MIRANDA_LOGFILE": "/home/ubuntu/miranda_log.txt"
			}
		}
	},

	"access_log": "/var/log/access.log"
}
  1. Error message (from /var/log/unit.log)
2022/03/03 14:27:02 [info] 176019#176019 "miranda_webservices" prototype started
2022/03/03 14:27:02 [info] 176020#176020 "miranda_webservices" application started
Python path configuration:
  PYTHONHOME = '/home/ubuntu/mainly-ui/venv'
  PYTHONPATH = (not set)
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/bin/python3'
  sys.base_prefix = '/home/ubuntu/mainly-ui/venv'
  sys.base_exec_prefix = '/home/ubuntu/mainly-ui/venv'
  sys.executable = '/usr/bin/python3'
  sys.prefix = '/home/ubuntu/mainly-ui/venv'
  sys.exec_prefix = '/home/ubuntu/mainly-ui/venv'
  sys.path = [
    '/home/ubuntu/mainly-ui/venv/lib/python38.zip',
    '/home/ubuntu/mainly-ui/venv/lib/python3.8',
    '/home/ubuntu/mainly-ui/venv/lib/python3.8/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007f5ff55df940 (most recent call first):
<no Python frame>
2022/03/03 14:27:02 [notice] 176019#176019 app process (isolated 176020) exited with code 1
2022/03/03 14:27:02 [warn] 149010#149010 failed to start application "miranda_webservices"
2022/03/03 14:27:02 [alert] 149010#149010 failed to apply new conf
2022/03/03 14:27:02 [notice] 149005#149005 process 176019 exited with code 0
  1. pyenv.cfg of the virtual environment exists. It’s user and group are set to unit.

7 ответов

Для пользователя Windows10.

Я использовал python3.4 в Windows10. Я установил python3.5. Я не мог найти переменную PYTHONPATH, PYTHONHOME env. Если я пишу python в консоли CMD, он продолжал использовать python3.4. Я удалил python3.4. Всякий раз, когда я командую python в консоли CMD, он начинает показывать ошибку, как показано ниже.

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

Я искал свою проблему. Решение было простым. Когда вы устанавливаете python3.5, вы можете настроить и установить Добавить Python в переменные среды в Дополнительные параметры.

Я просто останусь здесь для случая, что у кого-то есть подобные проблемы, посещайте здесь, чтобы они не тратили драгоценное время на многое, чтобы понять.

Jayground
02 авг. 2017, в 10:22

Поделиться

У меня была эта ошибка во время миграции на Ubuntu 17.10, и это решило проблему:

sudo dpkg-reconfigure python3

Возможно, вам придется закрыть сеанс и снова подключиться.

numahell
07 нояб. 2017, в 13:00

Поделиться

Для той же самой проблемы в Windows7

Вы увидите ошибку, подобную этой, если неверно установлены переменные среды/системные переменные:

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

Current thread 0x00001db4 (most recent call first):

Фиксирование это очень просто:

  • Когда вы загружаете версию Python3.x и запускаете файл .exe, он дает вам возможность настроить, где в вашей системе вы хотите установить Python. Например, я выбрал это местоположение: C:Program FilesPython36

  • Затем откройте свойства системы и перейдите на вкладку « Дополнительно» (или вы можете просто сделать это: Перейти в «Пуск» > «Поиск» переменных среды » > Нажмите» Изменить переменные системной среды «.) На вкладке» Дополнительно «найдите» Переменные среды «и щелкните по нему. Появится другое окно с именем» Переменные среды».

  • Теперь убедитесь, что ваши пользовательские переменные имеют правильный путь Python, указанный в «Переменная пути». В моем примере здесь вы должны увидеть C:Program FilesPython36. Если вы его не найдете, добавьте его, выбрав поле «Переменная переменная» и нажав «Изменить».

  • Последний шаг — дважды проверить поля PYTHONHOME и PYTHONPATH в разделе Системные переменные в том же окне. Вы должны увидеть тот же путь, как описано выше. Если не добавить его там тоже.

Затем нажмите «ОК» и вернитесь на CMD-терминал и попробуйте проверить на python. Теперь проблема должна быть решена. Это сработало для меня.

dotpy_novice
14 авг. 2017, в 05:22

Поделиться

Я столкнулся с той же проблемой под Windows7. Сообщение об ошибке выглядит так:

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 к переменным среды в Дополнительные параметры» при установке Python 3.6. Получается, что переменная окружения » PYTHONHOME » и » PYTHONPATH » все еще python2.7.

Наконец, я решил это, изменив » PYTHONHOME » на путь установки python3.6 и удалив переменную » PYTHONPATH «.

Li Qiao
23 апр. 2018, в 11:38

Поделиться

Посмотрите /lib/python3.5 и вы увидите неработающие ссылки на библиотеки Python. Пересоздайте его в рабочий каталог.

Следующая ошибка —

./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

IvanTheFirst
28 авг. 2018, в 15:04

Поделиться

Я также мог бы это исправить. PYTHONPATH и PYTHONHOME были причиной.

запустить это в терминале

   touch ~/.bash_profile
   open ~/.bash_profile

а затем удалите все ненужные части этого файла и сохраните. Я не знаю, как рекомендуется это делать!

Pber6154
06 фев. 2018, в 22:11

Поделиться

Ещё вопросы

  • 1Соответствие регулярного выражения Java для атрибута двойного класса CSS
  • 1Android добавляет новые контакты в сим
  • 1Проблема с лицензированием в уже опубликованном платном приложении
  • 1Обратный звонок для Кераса
  • 1Python Open CV оверлейное изображение на контуре большого изображения
  • 1УРОВЕНЬ УРОВНЯ Дерева с Явой
  • 1Попытка добавить значение к баллу в Optaplanner (используя Drools)
  • 1Передача данных в событие — Объединить события
  • 0Как предотвратить создание нового rand () после cin в c?
  • 0как показать выбранное значение поля выбора?
  • 0MYSQL Пользовательская переменная проблема
  • 0Прохождение программ на C ++, таких как Python и R
  • 1Основная проблема, касающаяся Task.Factory.StartNew
  • 0ckeditor и встроенный редактор находятся на одной странице
  • 0Сообщение об ошибке загрузки файла Blueimp для недопустимых файлов
  • 0mysqli_connect файл для повторного использования
  • 0Какой самый эффективный способ PHP прочитать первую и последнюю строку файла?
  • 1Метод вставки связанного списка
  • 1Office Open XML Дата не работает
  • 0загрузить функцию после загрузки другой
  • 0цикл с i ++ и нумерацией страниц
  • 1Android: как удалить учетную запись из базы данных, которая отображается в разделе «учетные записи и синхронизация» из моего собственного приложения
  • 0Редактирование html темы tumblr для удаления некоторых элементов
  • 0jQuery $ .grep не работает с Backbone «this.model.attributes»
  • 0Как зациклить переменную на PHP
  • 0Трудность получения коллекции моделей Require.js
  • 1Веб-сервер Airflow выдает ошибку cron для пакетов с None в качестве интервала расписания
  • 0Как мне создать параметр —help в программе командной строки на c / c ++?
  • 1Установить список как ключи в dict с неизвестным количеством элементов списка
  • 0Измените несколько элементов, используя fadeIn (1000), но не дожидаясь окончания исчезновения другого элемента
  • 0Более лаконичные слушатели событий
  • 0Загрузите HTML-страницу в фоновом режиме с помощью внедрения JavaScript
  • 1Python: для цикла в диапазоне по файлам
  • 0Почему первая вкладка размещена неправильно?
  • 0Запись буфера в текстовый файл
  • 0Эквивалент lseek для Linux в Windows API?
  • 0Чтение формата Outlook Express XP-32 DBX и формата XP-64 DBX
  • 1ForEach работает быстрее, чем мой Observable возвращает значения
  • 0Как динамически добавлять шаблоны на страницу в Angular
  • 0Prestashop — Добавить модуль на крючок
  • 0Проблема с функциями GPB SerializeTo
  • 1Создание ярлыка на андроид
  • 1Невозможно пропинговать хост из приложения, но может иначе
  • 0Вход просто обновляет страницу php html
  • 0Как мне установить класс на основе состояния дочернего элемента с Angular?
  • 1Обработка событий пользовательского интерфейса в Android
  • 1Получение ошибки Tomcat 404 при запуске моего файла WAR
  • 0Установить заголовок Content-Type в multipart?
  • 1Отдых против SOAP в отношении WSDL
  • 0Есть ли способ включить логирование SQL программно в Symfony2?

Hello Guys, How are you all? Hope You all Are Fine. Today I am just trying to run python command And I am facing following error ImportError: No module named ‘encodings’ in python. So Here I am Explain to you all the possible solutions here.

Without wasting your time, Let’s start This Article to Solve This Error.

Contents

  1. How ImportError: No module named ‘encodings’ Error Occurs ?
  2. How To Solve ImportError: No module named ‘encodings’ Error ?
  3. Solution 1: remove virtual environment files
  4. Solution 2: Update python PATH in Environment Variable
  5. Summary

How ImportError: No module named ‘encodings’ Error Occurs ?

I am just trying to run python command And I am facing following error.

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

How To Solve ImportError: No module named ‘encodings’ Error ?

  1. How To Solve ImportError: No module named ‘encodings’ Error ?

    To Solve ImportError: No module named ‘encodings’ Error You Just need to remove virtual environment files. Follow this command Just run this command rm -rf venv and then virtualenv -p /usr/bin/python3 venv/ Then source venv/bin/activate and then pip install -r requirements.txt. Second solution is In My case I just updated my python to Python 3.7 and still my Environment variable Path is Old and Suggesting Python 3.5 Solution is simple. When you install python3.7, you can custom install and check Add Python to environment variables in Advanced Options.

  2. ImportError: No module named ‘encodings’

    To Solve ImportError: No module named ‘encodings’ Error You Just need to remove virtual environment files. Follow this command Just run this command rm -rf venv and then virtualenv -p /usr/bin/python3 venv/ Then source venv/bin/activate and then pip install -r requirements.txt. Second solution is In My case I just updated my python to Python 3.7 and still my Environment variable Path is Old and Suggesting Python 3.5 Solution is simple. When you install python3.7, you can custom install and check Add Python to environment variables in Advanced Options.

Solution 1: remove virtual environment files

You Just need to remove virtual environment files. Follow this command.

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

Now your error must be solved.

Solution 2: Update python PATH in Environment Variable

In My case I just updated my python to Python 3.7 and still my Environment variable Path is Old and Suggesting Python 3.5

Solution is simple. When you install python3.7, you can custom install and check Add Python to environment variables in Advanced Options.

Summary

It’s all About this issue. Hope all solution helped you a lot. Comment below Your thoughts and your queries. Also, Comment below which solution worked for you?

Also, Read

  • ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

Недавно я переустановил ubuntu и обновился до 16.04 и не могу использовать python:

$ 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 не работает

$ 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 несколько раз. Что я могу сделать отсюда? Спасибо вам

4b9b3361

Ответ 1

Для 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
редактировать для

Ответ 2

Для пользователя Windows10.

Я использовал python3.4 в Windows10. Я установил python3.5. Я не мог найти переменную PYTHONPATH, PYTHONHOME env. Если я пишу python в консоли CMD, он продолжал использовать python3.4. Я удалил python3.4. Всякий раз, когда я командую python в консоли CMD, он начинает показывать ошибку, как показано ниже.

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

Я искал свою проблему. Решение было простым. Когда вы устанавливаете python3.5, вы можете настроить и установить Добавить Python в переменные среды в Дополнительные параметры.

Я просто останусь здесь для случая, что у кого-то есть подобные проблемы, посещайте здесь, чтобы они не тратили драгоценное время на многое, чтобы понять.

Ответ 3

Я столкнулся с той же проблемой под Windows7. Сообщение об ошибке выглядит так:

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 к переменным среды в Дополнительные параметры» при установке Python 3.6. Получается, что переменная окружения » PYTHONHOME » и » PYTHONPATH » все еще python2.7.

Наконец, я решил это, изменив » PYTHONHOME » на путь установки python3.6 и удалив переменную » PYTHONPATH «.

Ответ 4

Для той же самой проблемы в Windows7

Вы увидите ошибку, подобную этой, если неверно установлены переменные среды/системные переменные:

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

Current thread 0x00001db4 (most recent call first):

Фиксирование это очень просто:

  • Когда вы загружаете версию Python3.x и запускаете файл .exe, он дает вам возможность настроить, где в вашей системе вы хотите установить Python. Например, я выбрал это местоположение: C:Program FilesPython36

  • Затем откройте свойства системы и перейдите на вкладку « Дополнительно» (или вы можете просто сделать это: Перейти в «Пуск» > «Поиск» переменных среды » > Нажмите» Изменить переменные системной среды «.) На вкладке» Дополнительно «найдите» Переменные среды «и щелкните по нему. Появится другое окно с именем» Переменные среды».

  • Теперь убедитесь, что ваши пользовательские переменные имеют правильный путь Python, указанный в «Переменная пути». В моем примере здесь вы должны увидеть C:Program FilesPython36. Если вы его не найдете, добавьте его, выбрав поле «Переменная переменная» и нажав «Изменить».

  • Последний шаг — дважды проверить поля PYTHONHOME и PYTHONPATH в разделе Системные переменные в том же окне. Вы должны увидеть тот же путь, как описано выше. Если не добавить его там тоже.

Затем нажмите «ОК» и вернитесь на CMD-терминал и попробуйте проверить на python. Теперь проблема должна быть решена. Это сработало для меня.

Ответ 5

У меня была эта ошибка во время миграции на Ubuntu 17.10, и это решило проблему:

sudo dpkg-reconfigure python3

Возможно, вам придется закрыть сеанс и снова подключиться.

Ответ 6

Посмотрите /lib/python3.5 и вы увидите неработающие ссылки на библиотеки Python. Пересоздайте его в рабочий каталог.

Следующая ошибка —

./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

Я недавно столкнулся с этой проблемой и занял много постов, чтобы найти правильное решение для решения проблемы. И многие из них являются временными хаки.

Чтобы исправить это раз и навсегда, я написал краткое решение здесь.

Ответ 8

MAC OSX ANACONDA

Я недавно столкнулся с этой проблемой и занял много постов, чтобы найти правильное решение для решения проблемы. И многие из них являются временными хаки.

Чтобы исправить это раз и навсегда, я написал краткое решение здесь.

Ответ 9

Я также мог бы это исправить. PYTHONPATH и PYTHONHOME были причиной.

запустить это в терминале

   touch ~/.bash_profile
   open ~/.bash_profile

а затем удалите все ненужные части этого файла и сохраните. Я не знаю, как рекомендуется это делать!

Ubuntu 16.04, Python3, virtualenvwrapper, uwsgi. Python и uwsgi — стандарнтые системные.

Ошибка при запуске сервиса uwsgi, в логе ключевые строчки —

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

UPD!!!: Убрал строчку
home=/root/.virtualenvs/vek/bin/python
и все заработало. В крайнем случае буду использовать голобальное окружение Питона, но в чем же все-таки проблема?

Куда только уже не рыл, мысли кончились. В чем может быть проблема и как ее вообще искать (логи детализировать, что-то еще отдиагностировать)?

Все ключевые подробности, если чего не хватает — добавлю.

# cat /etc/uwsgi/apps-enabled/vek.ini 
[uwsgi]
plugins=python3
chdir=/srv/vek/django
module=vek.wsgi:application
home=/root/.virtualenvs/vek/bin/python

# apt-get install uwsgi-plugin-python3 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
uwsgi-plugin-python3 is already the newest version (2.0.12-5ubuntu3).
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

# cat /var/log/uwsgi/app/vek.log
...
Thu Jun 23 17:12:52 2016 - *** Starting uWSGI 2.0.12-debian (64bit) on [Thu Jun 23 17:12:51 2016] ***
Thu Jun 23 17:12:52 2016 - compiled with version: 5.3.1 20160412 on 13 April 2016 08:36:06
Thu Jun 23 17:12:52 2016 - os: Linux-4.4.0-24-generic #43-Ubuntu SMP Wed Jun 8 19:27:37 UTC 2016
Thu Jun 23 17:12:52 2016 - nodename: vek-dverey.ru
Thu Jun 23 17:12:52 2016 - machine: x86_64
Thu Jun 23 17:12:52 2016 - clock source: unix
Thu Jun 23 17:12:52 2016 - pcre jit disabled
Thu Jun 23 17:12:52 2016 - detected number of CPU cores: 1
Thu Jun 23 17:12:52 2016 - current working directory: /
Thu Jun 23 17:12:52 2016 - writing pidfile to /run/uwsgi/app/vek/pid
Thu Jun 23 17:12:52 2016 - detected binary path: /usr/bin/uwsgi-core
Thu Jun 23 17:12:52 2016 - setgid() to 33
Thu Jun 23 17:12:52 2016 - setuid() to 33
Thu Jun 23 17:12:52 2016 - chdir() to /srv/vek/django
Thu Jun 23 17:12:52 2016 - your processes number limit is 3912
Thu Jun 23 17:12:52 2016 - your memory page size is 4096 bytes
Thu Jun 23 17:12:52 2016 - detected max file descriptor number: 1024
Thu Jun 23 17:12:52 2016 - lock engine: pthread robust mutexes
Thu Jun 23 17:12:52 2016 - thunder lock: disabled (you can enable it with --thunder-lock)
Thu Jun 23 17:12:52 2016 - uwsgi socket 0 bound to UNIX address /run/uwsgi/app/vek/socket fd 3
Thu Jun 23 17:12:52 2016 - Python version: 3.5.1+ (default, Mar 30 2016, 22:46:26)  [GCC 5.3.1 20160330]
Thu Jun 23 17:12:52 2016 - Set PythonHome to /root/.virtualenvs/vek/bin/python
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'

Current thread 0x00007f0abc3b7780 (most recent call first):

# /root/.virtualenvs/vek/bin/python 
Python 3.5.1+ (default, Mar 30 2016, 22:46:26) 
[GCC 5.3.1 20160330] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import encodings
>>> encodings
<module 'encodings' from '/root/.virtualenvs/vek/lib/python3.5/encodings/__init__.py'>
>>>

Подозреваю что используется какой-то не тот Питон, но в логе uwsgi версия правильная

UPD: проверил версию неправильного именования плагина:

# uwsgi<TAB key>
uwsgi           uwsgi-core      uwsgi_python3   uwsgi_python35

Видно что есть плагины uwsgi_python3 и uwsgi_python35. Попробовал изменить название плагина в ini на python35 — в логе абсолютно то же.

В Python может быть несколько причин возникновения ошибки ModuleNotFoundError: No module named ...:

  • Модуль Python не установлен.
  • Есть конфликт в названиях пакета и модуля.
  • Есть конфликт зависимости модулей Python.

Рассмотрим варианты их решения.

Модуль не установлен

В первую очередь нужно проверить, установлен ли модуль. Для использования модуля в программе его нужно установить. Например, если попробовать использовать numpy без установки с помощью pip install будет следующая ошибка:

Traceback (most recent call last):
   File "", line 1, in 
 ModuleNotFoundError: No module named 'numpy'

Для установки нужного модуля используйте следующую команду:

pip install numpy
# или
pip3 install numpy

Или вот эту если используете Anaconda:

conda install numpy

Учтите, что может быть несколько экземпляров Python (или виртуальных сред) в системе. Модуль нужно устанавливать в определенный экземпляр.

Конфликт имен библиотеки и модуля

Еще одна причина ошибки No module named — конфликт в названиях пакета и модуля. Предположим, есть следующая структура проекта Python:

demo-project
 └───utils
         __init__.py
         string_utils.py
         utils.py

Если использовать следующую инструкцию импорта файла utils.py, то Python вернет ошибку ModuleNotFoundError.


>>> import utils.string_utils
Traceback (most recent call last):
File "C:demo-projectutilsutils.py", line 1, in
import utils.string_utils
ModuleNotFoundError: No module named 'utils.string_utils';
'utils' is not a package

В сообщении об ошибке сказано, что «utils is not a package». utils — это имя пакета, но это также и имя модуля. Это приводит к конфликту, когда имя модуля перекрывает имя пакета/библиотеки. Для его разрешения нужно переименовать файл utils.py.

Иногда может существовать конфликт модулей Python, который и приводит к ошибке No module named.

Следующее сообщение явно указывает, что _numpy_compat.py в библиотеке scipy пытается импортировать модуль numpy.testing.nosetester.

Traceback (most recent call last):
   File "C:demo-projectvenv
Libsite-packages
         scipy_lib_numpy_compat.py", line 10, in
     from numpy.testing.nosetester import import_nose
 ModuleNotFoundError: No module named 'numpy.testing.nosetester'

Ошибка ModuleNotFoundError возникает из-за того, что модуль numpy.testing.nosetester удален из библиотеки в версии 1.18. Для решения этой проблемы нужно обновить numpy и scipy до последних версий.

pip install numpy --upgrade
pip install scipy --upgrade 

Я недавно переустановил Ubuntu и сделал обновление до 16.04 и не могу использовать Python:

$ 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 не работает

$ 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 несколько раз. Что я могу сделать отсюда? Спасибо

11 ответов

Лучший ответ

Для 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 редактировать для


76

Community
17 Май 2019 в 20:48

Я также мог бы это исправить. PYTHONPATH и PYTHONHOME были причиной.

Запустить это в терминале

   touch ~/.bash_profile
   open ~/.bash_profile

А затем удалите все ненужные части этого файла и сохраните. Я не знаю, как это рекомендуется делать!


-10

Pber6154
6 Фев 2018 в 22:09

Возникла такая же проблема при обновлении моего mac до macOS Catalina, при использовании pipenv. Pipenv создает и управляет virtualenv для вас, так что прежнее предложение от @ Anoop-Malav такое же, только использование pipenv для удаления виртуальной среды на основе текущего каталога и сброса его:

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


0

qix
18 Ноя 2019 в 11:51

Поскольку это первый результат в Google, я просто хочу добавить следующую информацию для тех, кто имеет проблемы с тюрьмами:

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)

При попытке импортировать python в вашу тюрьму вам обоим нужно связать зависимости и /usr/lib/pythonX.Y с [JAIL] / usr / lib /. Надеюсь это поможет.


0

Matt
5 Фев 2020 в 23:24

У меня была эта ошибка во время миграции на Ubuntu 17.10, и это решило проблему:

sudo dpkg-reconfigure python3

Возможно, вам придется закрыть сеанс и восстановить соединение.


6

numahell
7 Ноя 2017 в 11:48

Для пользователя Windows10.

Я использовал python3.4 на Windows10. Я установил python3.5. Я не смог найти переменную env PYTHONPATH, PYTHONHOME. Если я командую python в консоли CMD, он продолжает использовать python3.4. Я удалил python3.4. Всякий раз, когда я командую python в консоли CMD, он начинает показывать ошибку, как показано ниже.

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

Я искал, чтобы выяснить мою проблему. Решение было простым. Когда вы устанавливаете python3.5, вы можете установить и установить Добавить Python в переменные среды в разделе «Дополнительные параметры».

Я просто оставляю здесь дело на случай, если кто-то сталкивается с подобными проблемами, чтобы не тратить свое драгоценное время на выяснение.


15

Jayground
2 Авг 2017 в 09:14

Посмотрите /lib/python3.5 и вы увидите неработающие ссылки на библиотеки Python. Пересоздайте его в рабочий каталог.

Следующая ошибка —

./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- не -импорт — имя — удалить анкерный weakref

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


0

IvanTheFirst
28 Авг 2018 в 14:33

Я столкнулся с этой проблемой «ModuleNotFoundError: нет модуля с именем ‘encodings» после обновления до macOS Catalina.

В моей системе было установлено несколько версий Python.

Удаление всех версий python (2.7 и 3.7.4) из системы macOS и переустановка последней версии python 3.8 работали для меня.

Чтобы удалить питона из macOS, я следовал инструкциям здесь Как удалить Python 2.7 на Mac OS X 10.6.4?

Ссылка выше для Python 2.7, но вы можете использовать то же самое для 3.7.


0

Kondal Kolipaka
3 Дек 2019 в 05:33

Я столкнулся с той же проблемой под Windows7. Сообщение об ошибке выглядит так:

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 к переменным среды в дополнительных параметрах» при установке Python 3.6. Получается, что переменная среды « PYTHONHOME » и « PYTHONPATH » по-прежнему равна python2.7.

Наконец, я решил эту проблему, изменив « PYTHONHOME » на путь установки python3.6 и удалив переменную « PYTHONPATH «.


10

ayaio
23 Апр 2018 в 09:57

Просто зайдите в File -> Settings -> выберите Project Interpreter на вкладке Project -> нажмите на маленький значок шестеренки -> Add -> System Interpreter -> выберите нужную версию Python в выпадающем меню

Мне показалось, что это работает


-1

Balu B
4 Ноя 2019 в 17:30

У меня была похожая проблема. На моем компьютере были установлены anaconda и python, и мои зависимости от python были из каталога Anaconda. Когда я удалил Anaconda, эта ошибка начала появляться. Я добавил PYTHONPATH, но он все еще не пошел. Я сверился с python -version и узнал, что он все еще идет по пути анаконды. Мне пришлось вручную удалить каталог Anaconda3, и после этого python начал получать зависимости от PYTHONPATH.
Проблема решена!


0

Satyam Gaba
16 Ноя 2019 в 09:22

Понравилась статья? Поделить с друзьями:
  • No media present error 1962
  • No matching pci ids in driverpack ini file как исправить
  • No matching function for call to c ошибка
  • No matching feature found h0050 как исправить
  • No match for argument phpmyadmin error unable to find a match phpmyadmin