python2.7安装Jupyter Notebook问题

python2.7安装Jupyter Notebook问题

我在Ubuntu 20.04下使用Anaconda创建了python2.7的虚拟环境,用于测试早期版本pytorch训练的SVHN模型,由于python2.7早已过期,在安装运行Jupyter Notebook时有不少问题。

0. 创建虚拟环境并安装jupyter notebook

通过conda create -n py27 python=2.7创建一个名为py27的环境并制定python版本为2.7. 通过 conda activate py27 激活该环境。运行 conda install jupyter notebook可以安装jupyter notebook,大部分依赖也会随着安装,但运行后可能会遇到以下问题。

1. 安装后无法运行,提示decorator.py错误

这是因为随着python版本变动,目前的decorator的5.x版本不兼容,需要安装4.x版本替换,解决方法。

conda install decorator=4.4.1 。安装后可以打开Jupyter Notebook。

2. UnicodeDecodeError编码问题

bashrc 文件中添加两行代码可以解决。可以通过nano ~/.bashrc 编辑文件,在最后增加两行代码

export LANG=en_US:UTF-8
export LANGUAGE=en_US:en

关闭完成后,执行source ~/.bashrc 后可以解决该问题。

3. 运行时报错No module named functools_lru_cache

该错误是由于Jupyter notebook依赖matplotlib的缘故,需要通过conda install matplotlib命令安装该模块。

4. 找不到google.protobuf问题

cd到pip show 命令中显示的文件夹中,例如 cd /home/weizy/miniconda3/envs/torchpy27/lib/python2.7/site-packages 继续cd到下一层的google目录中,可以看到该目录下有protobuf目录。

在google目录下运行touch __init__.py新建__init__.py空文件。回到python文件中,运行import google.protobuf 不再报错

5. 配置局域网访问Jupyter Notebook的权限

Jupyter Notebook默认仅在本机可以访问,为了方便使用,可以配置在局域网范围内访问。通过以下命令生成配置文件jupyter notebook --generate-config.该命令在用户主目录下生成 .jupyter/jupyter_notebook_config.py 的文件,编辑该文件,找到以下内容并进行相应修改:

c.NotebookApp.ip = '0.0.0.0'  # 允许任何地址连接
c.NotebookApp.open_browser = False  # 不要在启动时打开浏览器
c.NotebookApp.port = 8888  # 设置您希望使用的端口,确保该端口在您的机器上是可用的

在启动Jupyter Notebook后,可以看到类似http://(weizyP4ML or 127.0.0.1):8888/?token=****的提示,token=后面的内容是访问密码。可以直接使用该链接在局域网内访问Jupyter Notebook。

`

作者
魏智勇(John)
加入讨论

此站点使用 Akismet 来减少垃圾评论。了解我们如何处理您的评论数据

魏智勇(John)

站长,80后,创业者,擅长工业自动化与信息化技术,熟悉各种PLC,组态软件,熟悉计算机技术,熟悉LabVIEW、C,C#,JavaScript程序设计技术。

%d 博主赞过: