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

Python 3.x 尝试在受保护服务器上的venv中运行snakemake时出错,python-3.x,snakemake,python-venv,Python 3.x,Snakemake,Python Venv,对于一个项目,我使用Python3创建了一个虚拟环境(venv)。激活venv后,我使用一个简单的bash脚本(见下图)安装了所有必要的依赖项。(我使用:pip3 list验证了已安装的软件包,并得出结论,每个依赖项都已成功安装。) 我的项目使用snakemake,所以我运行了这个snakemake突击队: snakemake --snakefile Snakefile.py all 我得到这个错误: 我知道这与venv有关,因为没有venv,蛇怪运行得很完美。我已经阅读了Snakemak

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

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

snakemake --snakefile Snakefile.py all
我得到这个错误:

我知道这与venv有关,因为没有venv,蛇怪运行得很完美。我已经阅读了Snakemake安装文件,上面说我必须安装conda并制作并激活conda venv。但是,我没有sudo特权下载和安装conda(我在受保护的服务器上工作)


发生了什么,有人知道修复方法吗?

一个可能的原因可能是Python版本的不同。
pip3
环境为哪一版本的Python做准备

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


设想以下两种情况:当您手动运行Snakemake时,您使用最新的Python3(例如3.9)。但是,如果为旧版本(例如3.5)配置了
pip3
,则可以为不支持f字符串的Python3.5配置完全不同的环境。

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

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


设想以下两种情况:当您手动运行Snakemake时,您使用最新的Python3(例如3.9)。但是如果为旧版本(例如3.5)配置了
pip3
,则可以为不支持f字符串的Python3.5配置完全不同的环境。

请包含与错误相关的代码。我可以在您的图像中看到一个
语法错误
;但是,我看不到哪个文件,因为图像被裁剪。@Salma整个错误已经显示在图片中。最后一行是命令行。打印作业id属性时是否尝试使用单引号而不是双引号?这行似乎有语法错误。解决方案:我的python版本与snakemake的最新版本不兼容。最新的snakemake版本使用f字符串文字。我使用的是python 3.5.3,它没有f-string文本。:)很高兴您发现了它,请包含与错误相关的代码。我可以在您的图像中看到一个
语法错误
;但是,我看不到哪个文件,因为图像被裁剪。@Salma整个错误已经显示在图片中。最后一行是命令行。打印作业id属性时是否尝试使用单引号而不是双引号?这行似乎有语法错误。解决方案:我的python版本与snakemake的最新版本不兼容。最新的snakemake版本使用f字符串文字。我使用的是python 3.5.3,它没有f-string文本。:)很高兴你找到了它