You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装Snakemake后无法运行,遇Pulp模块属性错误求助

解决Snakemake运行时pulp模块的AttributeError问题

问题描述

激活conda安装的Snakemake环境后,执行snakemake --help出现如下报错:

Traceback (most recent call last):
File "/home/miniconda3/envs/snakemake/lib/python3.12/site-packages/snakemake/cli.py", line 2037, in main
parser, args = parse_args(argv)
^^^^^^^^^^^^^^^^
File "/home/miniconda3/envs/snakemake/lib/python3.12/site-packages/snakemake/cli.py", line 1629, in parse_args
parser = get_argument_parser()
^^^^^^^^^^^^^^^^^^^^^
File "/home/miniconda3/envs/snakemake/lib/python3.12/site-packages/snakemake/cli.py", line 770, in get_argument_parser
lp_solvers = pulp.list_solvers(onlyAvailable=True)
^^^^^^^^^^^^^^^^^
AttributeError: module 'pulp' has no attribute 'list_solvers'. Did you mean: 'listSolvers'?

问题原因

Snakemake代码中调用了pulp旧版本的list_solvers函数,但当前安装的pulp新版本已将函数名改为驼峰式的listSolvers,二者版本不兼容导致报错。

解决方案

方案1:降级pulp到兼容版本

  • 激活Snakemake环境:conda activate snakemake
  • 安装指定兼容版本的pulp(如2.7.0版本,仍保留list_solvers):
    conda install pulp=2.7.0 -c conda-forge
    

方案2:修改Snakemake代码(应急用,不推荐长期使用)

  • 定位到报错文件:/home/miniconda3/envs/snakemake/lib/python3.12/site-packages/snakemake/cli.py
  • 打开文件找到第770行,将pulp.list_solvers(onlyAvailable=True)修改为pulp.listSolvers(onlyAvailable=True)
  • 保存文件后重新执行snakemake --help

方案3:更新Snakemake到兼容新版本pulp的版本

  • 激活环境后,更新到最新版Snakemake(已修复该函数名兼容问题):
    conda install snakemake -c bioconda -c conda-forge
    

内容的提问来源于stack exchange,提问作者user3683485

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 11:42:39