- 在线时间
- 482 小时
- 最后登录
- 2026-9-11
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7951 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2977
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1183
- 主题
- 1198
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
- import json
- q d5 y1 G7 u, d1 n) M+ F\" W H0 d - ) E7 v; h# S' ^/ |. l\" N9 ?\" ?
- def convert_ipynb_to_py(ipynb_file, py_file):# N* V1 b+ a6 w6 E9 p
- with open(ipynb_file, 'r',encoding='utf-8') as f:% ~8 [* W* u+ |/ F0 H! S
- notebook = json.load(f); _0 w1 B. ]* T& k5 X
- 9 N/ S3 P' z4 B3 [2 f [
- with open(py_file, 'w',encoding='utf-8') as f:
# G% N9 r' d3 g\" `\" z2 K - for cell in notebook['cells']:
0 J8 i1 `: ]* }7 r5 e. z - if cell['cell_type'] == 'code':. G! G8 L2 z- p' L9 E
- f.write(''.join(cell['source']) + '\n\n')( T$ ]0 f4 |3 ?\" N
复制代码 以上代码是一个用于将.ipynb格式的Jupyter Notebook文件转换为.py格式的Python脚本的函数。该函数会读取指定的.ipynb文件,提取其中的代码单元格内容,并将其写入到指定的.py文件中。
) d0 O+ |# j7 w Q函数的参数解释如下:+ H! @" z7 E0 T+ G# ~
|! Q' [! M0 J. r9 A0 @1.ipynb_file:输入的.ipynb文件路径。
% o' M( l' e; |9 p* {2 @2.py_file:输出的.py文件路径。
9 l8 a6 U2 ]. u' w9 x: p/ L' E. B9 ]- X* d+ V7 N
函数的实现步骤:
1 I% W! S8 f8 R. x4 [( L
) B& P0 O9 h6 `6 \3.使用json模块读取.ipynb文件,将其解析为一个Python对象。
5 h* c8 a/ A. w7 J9 ^4.使用open()函数以写入模式打开指定的.py文件。. D5 s9 Y4 i. H- R" e b; Z2 g
5.遍历.ipynb文件中的每个单元格。9 E' d0 ]0 O9 h y: `6 m
6.如果单元格类型是代码单元格('code'),将其源代码内容写入到.py文件中。
4 _& V" z6 P: s& j: y3 p7.最终关闭文件。
& k+ [" c/ k- E4 G+ p
+ k/ s( G( R) |' A要使用这个脚本,你只需要调用 convert_ipynb_to_py 函数,并传入 .ipynb 文件和期望的 .py 文件名:- convert_ipynb_to_py('your_notebook.ipynb', 'your_notebook.py')
复制代码 将 ‘your_notebook.ipynb’ 和 ‘your_notebook.py’ 替换为你的文件名。
1 J; V1 A" g7 |. r' D7 C' T$ T* ~9 k8 w
, e: n0 I1 c8 C n# B
) S; O% ]" A. X/ V
8 `4 }1 K9 N2 C# O1 }
|
zan
|