import os import subprocess def convert_ipynb_to_md(root_dir, output_dir=None): for root, dirs, files in os.walk(root_dir): for file in files: if file.endswith(".ipynb"): ipynb_path = os.path.join(root, file) print(f"正在转换: {ipynb_path}") if output_dir: # 指定输出目录(保留子目录结构) rel_path = os.path.relpath(root, root_dir) full_output_dir = os.path.join(output_dir, rel_path) os.makedirs(full_output_dir, exist_ok=True) cmd = [ "jupyter", "nbconvert", "--to", "markdown", ipynb_path, "--output-dir", full_output_dir ] else: # 输出到原目录 cmd = [ "jupyter", "nbconvert", "--to", "markdown", ipynb_path ] subprocess.run(cmd) # ✅ 用法:修改下面两个路径 source_folder = "../CPlusPlus-main" # ← 你的.ipynb源目录 markdown_output_folder = None # ← 设置为 None 表示输出在原目录下 # markdown_output_folder = "docs_md" # ← 设置输出目录 convert_ipynb_to_md(source_folder, markdown_output_folder)