前段时间,在pycharm里配置了远程的Python解释器,然后在使用过程中,发现pycharm原来是可以使用Jupyter的文件,而且还可以配置远程的Jupyter环境,今天试了一下,一开始还是走了一些坑,今天梳理一下。
我们可以通过以下方式创建Jupyter Notebook文件:
根据自己需要,给文件命名。
然后就创建了一个后缀为ipynb文件。
用一段测试代码测试一下:
代码语言:javascript复制import numpy as np
x = np.arange(15,dtype=np.int64).reshape(3, 5)
x[1:, ::2] = -99
x
x.max(axis=1)
rng = np.random.default_rng()
samples = rng.normal(size=2500)
samples
运行,看看效果:
但,出现了报错现象:
代码语言:javascript复制runnerw.exe: CreateProcess failed with error 2:
看到这个错误信息,我第一时间想到的是,可能是python解释器的问题,有可能没有调用远程的,那我们进配置界面看看。
点击进来之后,就看到一个提示。
代码语言:javascript复制Use only local Python interpreters to start the managed Jupyter servers.To configure any remote Jupyter server,specify its URL and token.
大概意思是:
上面这个配置,仅用来启动,需要配置另外远程的Jupyter server。(英语水平有限,请勿见笑)
那我们在下面输入远程Jupyter server的URL以及token的参数。
就是这一步,很关键,把我们在生成jupyter notebook密码时产生的密钥放进来,就是那一大串。
然后拼成一大串:
http://192.168.0.16:9898/?token=b0ec9d44067b:48a6149c7013c4b66cac
然后“Apply”,点击“OK”。
我们再重新运行,看看效果。
然后会弹出一个密码输入框,这个就是你的Jupyter Notebook的登录密码。
这样就表示,配置成功。
后面,我再补充一下,我再弄得过程中遇到的问题。
第一个:记得拼接的时候,是全英文模式,尤其是那个问号“?”,记得不要搞错,还有那个端口。
第二个:Jupyter NoteBook记得提前启动后,免得出现关闭窗口后会导致Jupyter Notebook停止。建议采用后台启动模式,可以执行以下命令:
代码语言:javascript复制nohup jupyter notebook --allow-root > jupyter.log 2>&1 &
第三个:如果拼接了密钥还是不行,可以试试不需要加入密钥。我一开始弄的时候,是把密钥加进去了的,但发现还是不行,最后去掉又可以。目前这个,我自己还没有再次验证,毕竟自己折腾了很多次,把自己都搞得有点晕晕的。如果大家也出现加了密钥还是不行,可以试试换成这样格式。
代码语言:javascript复制http://192.168.0.16:9898/?token=