如何向IPython Notebook中导入.py文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何向IPython Notebook中导入.py文件相关的知识,希望对你有一定的参考价值。

IPython Notebook使用起来简洁方便,但是有时候如果需要导入一个现有的.py文件,则需要注意选择导入的方法以达到不同的效果。目前遇到3种方法。
(1) 直接将.py文件拖拽到Notebook界面中的列表里
ipython notebook
(2) 利用 %load:
%load test.py
这种方法可以将自己编写的.py文件原封不动地搬到一个cell里面,自然也往往不是我们想要达到的效果。
(3) 利用 IPython.nbformat.current
import IPython.nbformat.current as nbf
nb = nbf.read(open(\'test.py\', \'r\'), \'py\')
nbf.write(nb, open(\'test.ipynb\', \'w\'), \'ipynb\')
这样会生成一个名为 test.ipynb 的文件
运行计时
我们可以通过ExecutionTime插件来对每个cell的运行计时。
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
jupyter nbextension enable execute_time/ExecuteTime
参考技术A 最简单的方法:
1
2
import
os
os.system("python
filename")
filename最好是全路径+文件名;
其他方法:
execfile('xx.py'),括号内为py文件路径;
如果需要传参数,就用os.system()那种方法;
如果还想获得这个文件的输出,那就得用os.popen();

IPython Notebook 运行python Spark程序

1.安装pip

因为centos7.0自带的python系统是2.7.5,并没有安装pip,需要先安装pip

$ wget https://bootstrap.pypa.io/get-pip.py
$ python get-pip.py

$ pip install numpy pandas scipy jupyter

  

2.配置启动项

$ vim ./.bashrc

export PYSPARK_DRIVER_PYTHON=/usr/bin/ipython
export PYSPARK_PYTHON=/usr/bin/python

$ source ./.bashrc

  

3.jupyter 无法远程访问

$ jupyter notebook --allow-root  


其实这时候,local如果有browser的话,就可以输入访问了,但是没有,所以需要远程访问: http://ip:8888,发现访问不了

 

(一)配置远程访问jupyter

1)首先输入ipython生成秘钥

 

$ ipython
from notebook.auth import passwd
passwd()

  

设定一个密码,会生成一个sha1的秘钥,如下图:

 

技术分享图片

2)生成jupyter的config文件

$ jupyter notebook --generate-config

  

这时候会生成配置文件,在 ~/.jupyter/jupyter_notebook_config.py

 

3)修改配置文件:~/.jupyter/jupyter_notebook_config.py

 

$vim ~/.jupyter/jupyter_notebook_config.py

  

加入如下内容,其中sha1那一串秘钥是上面生成的那一串

 

c.NotebookApp.ip=‘*‘
c.NotebookApp.password = u‘sha1:f9030dd55bce:75fd7bbaba41be6ff5ac2e811b62354ab55b1f63‘
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888

保存退出。

 

4)启动jupyter

 

$jupyter notebook --allow-root

  

在远程电脑上,打开浏览器,输入:

 

http://your-server-ip:8888

技术分享图片

 

需要输入密码,就是上面设置的那个密码,输入即可

技术分享图片

 

4.启动

$ PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS="notebook --allow-root" pyspark # 其中--allow-root是因为root登录master

  

技术分享图片

 








以上是关于如何向IPython Notebook中导入.py文件的主要内容,如果未能解决你的问题,请参考以下文章

iPython:如何从模块中导入新添加的功能?

在 Jupyter notebook 中导入本地模块

如何安装ipython notebook

无法在 Jupyter Notebook 中导入 TensorFlow

如何在 Zeppelin notebook 和 pyspark 中导入 Delta Lake 模块?

如何:在支持 GPU 的 Conda 中导入 Jupyter Notebook 中的 TensorFlow?