- 在线时间
- 481 小时
- 最后登录
- 2026-8-25
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7859 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2946
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1177
- 主题
- 1192
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
- import json+ v# C2 K$ {2 e J( _/ M, k. I+ {
- * p& p8 {% u& [* b
- def convert_ipynb_to_py(ipynb_file, py_file):
, V. ^! O/ L+ l - with open(ipynb_file, 'r',encoding='utf-8') as f:8 i% c1 u\" p' P' s3 W, B' J
- notebook = json.load(f)
: ]& M7 S7 u0 w5 D$ G
8 U8 V$ \3 N( V# M3 @! Q, W- with open(py_file, 'w',encoding='utf-8') as f:) @' b9 h3 i3 B% x0 J$ C\" J
- for cell in notebook['cells']:9 e$ F8 Q2 d* {2 d
- if cell['cell_type'] == 'code':, i# a# l4 o/ [+ Y. ^9 U: B
- f.write(''.join(cell['source']) + '\n\n')4 L9 ~5 Z ^% C; M) z4 U9 B4 s
复制代码 以上代码是一个用于将.ipynb格式的Jupyter Notebook文件转换为.py格式的Python脚本的函数。该函数会读取指定的.ipynb文件,提取其中的代码单元格内容,并将其写入到指定的.py文件中。
4 |% X8 g9 ]. i0 P函数的参数解释如下:
% J: N0 Z) q% e$ x2 h3 I
9 \9 V0 e5 J. X i0 Q1.ipynb_file:输入的.ipynb文件路径。
* E: S0 M" a) F; e! C/ g2.py_file:输出的.py文件路径。
1 k3 E* v7 I% x) m& s g _
& E; s0 ~' D# Q e$ Y( d函数的实现步骤:
z! k& f8 j* ]4 e. i9 N" a- h9 ?! t
3.使用json模块读取.ipynb文件,将其解析为一个Python对象。" T% r ?+ i2 u7 R, H8 @
4.使用open()函数以写入模式打开指定的.py文件。
5 j/ ?. U$ m5 w9 l" _5.遍历.ipynb文件中的每个单元格。2 L, M+ e0 a+ g2 S% I
6.如果单元格类型是代码单元格('code'),将其源代码内容写入到.py文件中。! G* H9 T( I& a/ n0 s* ~
7.最终关闭文件。0 S+ f% m) ]. i7 X/ o2 D" z
+ ]1 x3 h* B1 J/ d& ?
要使用这个脚本,你只需要调用 convert_ipynb_to_py 函数,并传入 .ipynb 文件和期望的 .py 文件名:- convert_ipynb_to_py('your_notebook.ipynb', 'your_notebook.py')
复制代码 将 ‘your_notebook.ipynb’ 和 ‘your_notebook.py’ 替换为你的文件名。6 Y$ S6 R' u) M0 E; I; x
, Q! `* C5 `3 M: C* X- Z! j& H
1 h3 U9 R; |0 p6 ]3 P6 }# x" V. f! |7 r4 g) D: l0 S/ ~
; @- O* e" y3 B6 N4 ~) a- @% U- ] |
zan
|