我试图通过Mac的Automator运行Python脚本,命令非常直接:
"cd/Users/myname/Desktop/project&&python3 myprojectapp.py"。
然而,每次我尝试运行它时,Automator都会引发一个错误,例如ModuleNotFoundError。然而,这是不可能的,因为我已经安装了所有的库(例如Pandas(,并且在终端中运行上面写的命令工作得很完美。
现在,我在某个地方读到了类似的问题,其中包括:"export PATH=/usr/local/bin:$PATH">命令之前,它就工作了。现在,在我继续我的生活之前,我想了解这一行到底做了什么,以及它是如何影响Automator使脚本发挥作用的。
提前谢谢!
该命令基本上修改环境变量PATH
,并将目录/usr/local/bin
放在当前PATH
中的所有内容之前。但是,该命令是临时的,并且在会话关闭时将恢复环境变量PATH。
可能发生的情况是,您在终端中运行的python和运行的python Automator是不同的。/usr/local/bin
可能包含与您在终端中使用的python版本相同的版本。看看~/.bash_profile
,看看里面是否有类似于export PATH=/usr/local/bin:$PATH
的东西。
另一种检查方法是在两者中键入which python
,看看它是否指向同一个python。在PATH
变量的目录列表中,您可能还有另一条python。
通常使用虚拟python环境来跟踪哪个python正在运行,并在不干扰系统python的情况下对python进行实验。其中的例子包括:Anaconda和virtualenv。