致命的 Python 错误:Py_Initialize:无法获取语言环境编码 - ImportError:没有名为“encodings”的模块

致命的 Python 错误:Py_Initialize:无法获取语言环境编码 - ImportError:没有名为“encodings”的模块

我试图运行 jupyter 笔记本这个 Github 页面,这意味着能够运行 jupyter notebook,以及克隆 GitHub 存储库。

在 Jupyter Notebook 安装页面上,我被要求下载 Continuum Anaconda。因此,我使用了以下代码:这一页在我的计算机上为 Python3 安装 Anaconda:

wget https://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh
bash Anaconda3-4.2.0-Linux-x86_64.sh -b -p ~/anaconda
rm Anaconda3-4.2.0-Linux-x86_64.sh
echo 'export PATH="~/anaconda/bin:$PATH"' >> ~/.bashrc 
source .bashrc
conda update conda

这似乎没有问题。我能够在命令行中运行 Notebooks 和 Python3。

然后我下载了 github 存储库

wget https://github.com/jakeret/tf_unet/archive/master.zip

并从下载的目录中打开了笔记本。一切正常,只是我无法运行命令from tf_unet install(我认为错误消息是“没有名为 tf_unet 的模块”),我猜想这是因为我实际上没有在存储库上运行 make。

在此阶段,python 和 python3 在 tf_unet 目录之外的命令行上运行良好,但是当我尝试在目录中运行 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'

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

我删除了存储库,并使用git clone https://github.com/jakeret/tf_unet

按照 ./docs/installation.rst 中的说明,我运行了以下命令:

pip install -r requirements.txt
pip install tensorflow
python setup.py install --user

pip install tensorflow是不必要的,因为 Anaconda 安装包含 tensorflow。python setup.py install --user失败并出现与之前相同的错误(“无法进行区域设置编码”)

按照类似的 AskUbuntu 问题中的说明(由于声誉问题,我无法添加更多链接),我尝试取消设置 PYTHONPATH(unset PYTHONPATH),但没有成功。我还尝试了一个 StackOverflow 线程,它建议运行

rm -rf venv
virtualenv -p /usr/bin/python3 venv/
source env/bin/activate

但是它不起作用,因为 virtualenv 失败的原因与其他 python 命令失败的原因相同。

此时,我退出了 tf_unet 目录并意识到无论工作目录如何,python 和 python3 命令都不再起作用。

这就是我目前的情况。任何关于如何在我的机器(Ubuntu Server 14.04.4 LTS)上恢复使用 Python 的建议都将不胜感激。任何关于恢复使用 Python 和使用 tf_unet 的建议都将非常棒。

相关内容