importorror:没有名为“encodings”的模块

2024-05-19 06:23:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近重新安装了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好几次。从这里我能做什么?谢谢你


Tags: tolibrariesprefixnoterrorfindsettingcould
3条回答

对于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

对于Windows10用户

我在Windows10上用的是python3.4。我安装了python3.5。我找不到PYTHONPATH,PYTHONHOME env变量。如果我在命令控制台中命令python,它会一直使用python3.4。我删除了python3.4。每当我在CMD控制台中命令python时,它就会开始显示如下错误。

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

我想找出我的问题。解决办法很简单。安装python3.5时,可以自定义安装,并在“高级选项”中选中“将Python添加到环境变量”。

我只是离开这里,以防有人有类似的问题访问这里,这样他们就不会浪费宝贵的时间来找出答案。

我在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):

我已经安装了Python2.7(现在已卸载),在安装Python3.6时选中了“在高级选项中将python添加到环境变量”。结果表明,环境变量“PYTHONHOME”和“PYTHONPATH”仍然是python2.7。

最后,我通过将“PYTHONHOME”修改为python3.6 install path并删除变量“PYTHONPATH”解决了这个问题。

相关问题 更多 >

    热门问题