Bootstrap

使用py脚本导出conda环境的pip依赖包至requirements.txt

使用py脚本导出conda环境的pip依赖包至requirements.txt

import os
import subprocess
import yaml


def export_requirements(env_name, output_file="requirements1.txt"):
    # 导出环境为 YAML
    env_file = "environment.yml"
    subprocess.run(["conda", "env", "export", "--name", env_name, "--no-builds", "-f", env_file])

    # 解析 YAML 文件
    with open(env_file, "r") as f:
        env_data = yaml.safe_load(f)

    # 提取 pip 部分
    pip_dependencies = []
    for dep in env_data.get("dependencies", []):
        if isinstance(dep, dict) and "pip" in dep:
            pip_dependencies.extend(dep["pip"])

    # 保存为 requirements.txt
    with open(output_file, "w") as f:
        f.write("\n".join(pip_dependencies))

    print(f"Requirements saved to {output_file}")
    os.remove(env_file)  # 删除中间文件


# 使用当前激活的 conda 环境
current_env = os.environ.get("CONDA_DEFAULT_ENV", "base")
export_requirements(current_env)
;