在 jupyter 笔记本中创建一个原始 python 文件

create a raw python file in jupyter notebook

我是 Python 的新手。我开始使用 Jupyter notebook 学习它。同时测试 python 代码非常有用我可以记录我在 Jupiter 支持的 markdown 中学到的知识。

直到我开始使用 module/package 我注意到每个文件都以“笔记本扩展名 .ipynb 结尾。我明白为了让 Jupyter 有这个好看的可视化它必须以某种格式存储文件。

是否有使用 Jupyter 创建原始 python 文件的解决方案?

如果我必须安装其他插件来完成这个我没问题。

要从现有笔记本 (somenotebook.ipynb) 创建 python 文件,请 运行

jupyter nbconvert somenotebook.ipynb --to script

这将创建 somenotebook.py

实际上 jupyter 允许创建纯文本文件:

创建一个新的文本文件

保存扩展名为 python 的文本文件

我在 jupyter notebook 中没有找到这样的选项,但是你可以创建一个空的 *.py 文件,然后用 jupyter 打开。它比纯文本更好,因为您会得到彩色文本。

如果您创建了一个 jupyter notebook (.ipynb),并且您的目标是从中创建一个 python 可执行文件 (.py),您可以直接使用 "File > Download as > Python (.py)" 中的菜单选项如下图

另一种创建 python 文件并从 Jupyter notebook 单元格中执行它的方法如下:

另一种将代码从 jupyter notebook 单元格添加到 .py 的方法是使用内置的 Magic 命令 %logstart.

%writefile 将当前单元格代码保存到 .py 文件。

%logstart

来自Documentation

在会话中的任何位置开始记录。

%logstart [-o|-r|-t|-q] [log_name [log_mode]]

如果没有给出名称,它默认为当前目录中名为 ipython_log.py 的文件,在 rotate 模式下(见下文)。

%logstart namebackup 模式保存到文件 name。它会保存您到那时为止的历史记录,然后继续记录。

%logstart 采用第二个可选参数:logging mode。这可以是以下之一(请注意模式未加引号):

append
Keep logging at the end of any existing file.

backup
Rename any existing file to name~ and start name.

global
Append to a single logfile in your home directory.

over
Overwrite any existing log.

rotate
Create rotating logs: name.1~, name.2~, etc.

检查 documentation

中的更多选项

示例:

%logstop
%logstart -ort sample.py append

以上命令将所有 Jupyter notebook 代码附加到 sample.py

注意:第一个单元格应该运行