尝试在受保护服务器上的 venv 中运行 snakemake 时出错

问题描述

对于一个项目,我使用 python3 创建了一个虚拟环境 (venv)。在激活我的 venv 后,我使用一个简单的 bash 脚本(见下图)安装了所有必要的依赖项。 (我使用:pip3 list 验证了已安装的软件包并得出结论,每个依赖项都已成功安装。)

simple bash script

我的项目使用了snakemake,所以我运行了这个snakemake突击队:

snakemake --snakefile Snakefile.py all

我收到此错误

error

我知道它必须对 venv 做一些事情,因为没有 venv 蛇形运行完美。我已经阅读了 Snakemake 安装文档,它说我必须安装 conda 并制作和激活 conda venv。但是,我没有下载和安装 conda 的 sudo 权限(我在受保护的服务器上工作)。

发生了什么,有人知道解决方法吗?

解决方法

一个可能的原因可能是 Python 版本的差异。 pip3 为哪个版本的 Python 准备环境?

从提供的图片中可以看出,无效的语法可能是因为 Python 版本不支持 f-strings。

想象以下两种场景:当您手动运行 Snakemake 时,您使用的是最新的 Python3(例如 3.9)。但是如果为旧版本(例如 3.5)配置了 pip3,您可以为不支持 f-strings 的 Python3.5 配置一个非常不同的环境。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...