数学建模社区-数学中国
标题:
使用python脚本来解决 .ipynb 文件转换为 .py
[打印本页]
作者:
2744557306
时间:
2024-3-21 09:59
标题:
使用python脚本来解决 .ipynb 文件转换为 .py
import json
+ _; G* `7 p$ l, S8 U6 p0 p
. v; e' |. y: V$ a, A! }
def convert_ipynb_to_py(ipynb_file, py_file):
" e* Q% h: I: i6 k1 J" A q
with open(ipynb_file, 'r',encoding='utf-8') as f:
1 R! G: l& k, k% W! S( y
notebook = json.load(f)
! n& ?: D1 n( z: |1 u* r q
) d& j0 f3 v( K
with open(py_file, 'w',encoding='utf-8') as f:
/ d5 w# P0 l: n7 O% Q
for cell in notebook['cells']:
/ K/ |5 C; v! u* j' `
if cell['cell_type'] == 'code':
0 k, x; Y1 I$ |
f.write(''.join(cell['source']) + '\n\n')
2 B2 {1 _) F+ |) D7 t) |
复制代码
以上代码是一个用于将.ipynb格式的Jupyter Notebook文件转换为.py格式的Python脚本的函数。该函数会读取指定的.ipynb文件,提取其中的代码单元格内容,并将其写入到指定的.py文件中。
. G% f [; e: n9 d$ d
函数的参数解释如下:
% h, Y4 A* x9 K% ]4 w
4 f' p) }( q& K6 L% i l5 S
1.ipynb_file:输入的.ipynb文件路径。
9 @# ]* L; f/ a$ e+ ~
2.py_file:输出的.py文件路径。
7 u5 S7 G c$ K0 x
' V9 Y. w9 f* Y
函数的实现步骤:
, i' Z# j" {; {2 U( J3 Y
0 M; U4 n. f1 s: \& W
3.使用json模块读取.ipynb文件,将其解析为一个Python对象。
# o4 X' j0 `: E: A6 _+ R
4.使用open()函数以写入模式打开指定的.py文件。
( b! S5 L! |1 o( @& |
5.遍历.ipynb文件中的每个单元格。
7 J1 y) {( n: X6 R
6.如果单元格类型是代码单元格('code'),将其源代码内容写入到.py文件中。
. f3 y a2 p% d
7.最终关闭文件。
8 q: \# f8 R; t' S+ _: V
4 x$ l/ J& j' O
要使用这个脚本,你只需要调用 convert_ipynb_to_py 函数,并传入 .ipynb 文件和期望的 .py 文件名:
convert_ipynb_to_py('your_notebook.ipynb', 'your_notebook.py')
复制代码
将 ‘your_notebook.ipynb’ 和 ‘your_notebook.py’ 替换为你的文件名。
: g- n8 {8 y! O& M
: G( w* ?( A# D5 A3 W
" i% Y, K2 _/ f! T5 ?
* v1 Y2 r9 |" l! h) i
2 ] ?" M. G$ V% ^1 U
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5