将 python 转换为包含单个单元格的 jupyter
convert python to jupyter containing a single cell
我有一个执行ipynb文件的环境,但我想用py来写。我一直在尝试 p2j,但是,它将单个 py 脚本转换为大量单元格。有没有一种简单的方法(除了自己编写)在单个单元格中将 py 转换为 ipynb - 而不是在每个注释和行中将 py 拆分到不同的单元格?我正在使用 Ubuntu WLS。
Jupyter Notebook 只是一个 JSON 文件。因此,您可以将源文件读入行列表,然后将该列表放入 ipynb
结构中。之后,将内容转储到文件中。
import json
SOURCE = "source.py"
OUTPUT = "output.ipynb"
jupyter_file_content = {
"cells": [
{
"cell_type": "code",
"metadata": {},
"source": list(open(SOURCE, encoding="utf-8"))
},
],
"metadata": {},
"nbformat": 4,
"nbformat_minor": 2
}
with open(OUTPUT, "w", encoding="utf-8") as file:
json.dump(jupyter_file_content, file)
不过,将代码复制并粘贴到单元格中要容易得多。
我有一个执行ipynb文件的环境,但我想用py来写。我一直在尝试 p2j,但是,它将单个 py 脚本转换为大量单元格。有没有一种简单的方法(除了自己编写)在单个单元格中将 py 转换为 ipynb - 而不是在每个注释和行中将 py 拆分到不同的单元格?我正在使用 Ubuntu WLS。
Jupyter Notebook 只是一个 JSON 文件。因此,您可以将源文件读入行列表,然后将该列表放入 ipynb
结构中。之后,将内容转储到文件中。
import json
SOURCE = "source.py"
OUTPUT = "output.ipynb"
jupyter_file_content = {
"cells": [
{
"cell_type": "code",
"metadata": {},
"source": list(open(SOURCE, encoding="utf-8"))
},
],
"metadata": {},
"nbformat": 4,
"nbformat_minor": 2
}
with open(OUTPUT, "w", encoding="utf-8") as file:
json.dump(jupyter_file_content, file)
不过,将代码复制并粘贴到单元格中要容易得多。