我的一位同事编写了一个我需要使用的python脚本,它在shell脚本中调用。它使用matplotlib生成图。但是,当我尝试运行他的脚本时,它在matplotlib命令中失败,其中包含" ImportError:没有名为PyQt4"的模块。在shell脚本中使用类似
的语法调用python脚本./script.py
script.py以一行开头,指定要在其miniconda环境中使用的python exec,如
#!/user/miniconda/envs/py27/bin/python
我认为问题是当我运行此命令时,代码在我的系统上使用默认的PyQt。我尝试在他的环境中使用python exec运行script.py,但这会产生相同的错误。如果我在登录帐户时尝试在其计算机上运行脚本,也会发生这种情况。有没有办法可以运行这个脚本,好像我是我帐户中的同事一样?
答案 0 :(得分:2)
让您的同事生成包含其环境依赖关系的yaml文件,然后在您的计算机上创建其环境的副本以运行该脚本。
# your coworker runs:
conda env export -n [name of his environment] > environ.yml
获得yaml文件后,即可运行
conda env create -f environ.yml
复制环境。从那里,激活它并运行脚本
# on Windows
activate [environment name]
python ./script.py
# on *nix
source activate [environment name]
python ./script.py