如何向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文件的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Jupyter Notebook 中导入 TensorFlow