python 从.py转换为.ipynb

1qczuiv0  于 2023-02-28  发布在  Python
关注(0)|答案(7)|浏览(781)

我写了一个juypter笔记本,不知怎么的已经转换成了.py。我想把它恢复成原来的格式。有人知道怎么做吗?
之前有一个关于堆栈溢出的问题,但是这个解决方案对我不起作用。Converting to (not from) ipython Notebook format
下面是一个代码现在看起来像什么的例子。这是一个很大的代码,所以需要几个小时来手动复制和粘贴它。
谢谢你的帮助。

{
   "cell_type": "code",
   "execution_count": 581,
   "metadata": {},
   "outputs": [],
   "source": [
    "def add_trig_slope(data, size = 1, axis = 0, option = 0, random = False, lower_b = -1, upper_b = 2): \n",
    "    \n",
    "    # To make the gradual decline of the fuck you plot\n",
    "    ## sin, cos, tan, sigmoid, other activation functions?\n",
    "    # need to list the option in the doc string\n",
    "    \n",
    "    ## Add a random element\n",
    "    newdata = data.copy()\n",
    "    cols = list(newdata.columns)\n",
    "    funcs = [math.sin, math.cos, math.tan, expit]\n",
    "    func = funcs[option]\n",
    "    if axis == 0:\n",
    "        for col in cols:\n",
    "            newdata.loc[:, col] -= size * (func(cols.index(col)))\n",
    "            if random:\n",
    "                newdata.loc[:,col] -= np.random.uniform(lower_b,upper_b)\n",
    "\n",
    "    elif axis == 1:\n",
    "        for i, node in enumerate(newdata.index):\n",
    "            newdata.loc[node,:] -= size * (func(i))\n",
    "            if random:\n",
    "                newdata.loc[node,:] -= np.random.uniform(lower_b,upper_b)\n",
    "\n",
    "        \n",
    "    return newdata\n",
    "    \n",
    "    "
   ]
xzv2uavs

xzv2uavs1#

使用p2j将Python源代码转换为Jupyter Notebook。
从命令行运行

-->pip install p2j

然后转到你的文件所在的目录. --〉(例如-〉cd下载,如果文件在下载目录)
然后运行

-->p2j myscript.py

这将创建一个myscript. ipynb文件。

xmakbtuz

xmakbtuz2#

只需更改扩展名即可将其重命名,例如Linux/Macos

mv <file>.py <file>.ipynb

或右键单击窗口的重命名并键入带有扩展名的全名
(因为内容似乎已经是.ipynb内容)

bgibtngc

bgibtngc3#

您确实应该考虑使用jupytext
运行conda install jupytextpip install jupytext
然后执行:jupytext --set-formats ipynb,py <file>.ipynb
这将创建.ipynb文件,并使其与.py文件保持同步:
jupytext --set-formats ipynb,py <file>.ipynb --sync
这将确保jupyter从现在开始保存时保持两个文件同步...
最后一点:如果你是一个使用gui的人,在运行jupytext的安装命令后,其他的一切都可以在gui上完成,File-->jupytext-->pair Notebook with light Script也是如此:

42fyovps

42fyovps4#

ipynb-py-convert
通过以下步骤,你可以得到.ipynb文件
安装“pip install ipynb-py-convert”通过命令提示符转到保存py文件的目录输入命令
ipynb-py-将您的YourFileName.py文件名转换为.ipynb
例如:. ipynb-py-转换getting-started-with-kaggle-titanic-problem.pykaggle-泰坦尼克号问题入门.ipynb
上面的命令将创建一个名为“YourFileName.ipynb”的python脚本,并根据我们的示例创建getting-started-with-kaggle-titanic-problem.ipynb文件

7kjnsjlb

7kjnsjlb5#

如果py文件从一开始就是py,重命名将不起作用。最简单的方法可能是从PowerShell运行以下脚本:
1.安装ipynb-py转换:
pip安装ipynb-py-转换
1.跳转到目录级别
cd "您的目录路径"
1.递归转换所有文件(也在所有子目录中):
foreach(获取子项中的$f.""-筛选器 *. py-递归){ipynb-py-转换$f.完整名称"$($f.完整名称.子字符串(0,$f.完整名称.长度-3)). ipynb "}
干杯!

cyvaqqii

cyvaqqii6#

如果您希望应用根目录在项目目录中的所有.py文件的转换,可以在批处理文件中运行以下命令:

for /r %%v in (*.py) do p2j "%%v"
snz8szmq

snz8szmq7#

安装jupytext软件包(# pip安装jupytext)

import jupytext
notebook = jupytext.read('example.py')
jupytext.write(notebook, 'example.ipynb', fmt='.ipynb')

相关问题