运行 Python 带有 Automator 的脚本 // 为什么它只有在我包含 export PATH=/usr/local/bin:$PATH 时才有效,这是什么意思?
Run Python script with Automator // why does it only work if I include export PATH=/usr/local/bin:$PATH and what does it mean?
我试图通过 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 and virtualenv.
我试图通过 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 and virtualenv.