How to load/edit/run/save text files (.py) into an IPython notebook cell?
我最近开始使用ipython笔记本作为我工作流程的一部分。但是,我没有成功地找到一种方法将.py文件导入到打开的ipython笔记本的单个单元格中,以便编辑、运行和保存它们。能做到吗?
我在文档中发现了这一点,它告诉我如何将.py文件作为新笔记本导入,但这与我想要实现的目标不符。
任何建议都会非常感谢。
EDIT: Starting from IPython 3 (now Jupyter project), the notebook has a text editor that can be used as a more convenient alternative to
load/edit/save text files.
文本文件可以通过magic命令
如果执行的单元格包含:
1 | %load filename.py |
EDOCX1[1]的内容将加载到下一个单元格中。您可以像往常一样编辑和执行它。
要将单元内容保存回文件中,请在单元的开头添加Cell Magic
为了获得任何魔法命令的帮助,添加一个
有关magic函数的常规帮助,请键入"%magic"有关可用magic函数的列表,请使用%lsmagic。描述其中任何一个,键入%magicu name?例如"%CD?".
另请参见:来自官方ipython文档的魔力函数。
写/保存
- 将单元内容写入/保存到myfile.py中(使用
-a 追加)。另一个别名:%%file myfile.py 。
运行
- 运行myfile.py并在当前单元格中输出结果
加载/导入
- 将"import"myfile.py加载到当前单元格中
更多的魔法和帮助
- 列出所有其他酷的细胞魔术命令。
- 有关如何使用某个命令的帮助。即
%run? 。
注释
除了cell magic命令外,ipython notebook(现在的jupyter notebook)非常酷,它允许您直接从cell使用任何unix命令(这也相当于使用
要从单元运行unix命令,只需在命令前面加上
!python --version 查看您的python版本!python myfile.py 运行myfile.py,输出结果在当前单元格中,就像%run 一样(见下面注释中!python 和%run 的区别)。
此外,请参阅此nbviewer以获取更多示例解释。希望这有帮助。
将python文件拖放到ipython笔记本的"home"笔记本表中,单击"上载"。这将创建一个新的笔记本,其中只有一个单元格包含.py文件内容
或者从您最喜爱的编辑器中复制/粘贴;)
我发现在ipython笔记本中使用ls和cd查找文件是令人满意的。然后在单元格中键入cat您的文件名,您将得到文件的内容,然后可以将其作为代码粘贴到单元格中。