从任何地方运行 Python 脚本

从任何地方运行 Python 脚本

我在 my 中定义了一个 bash 函数.bash_profile,以便可以从任何目录运行某个 Python 脚本。我的功能是这样的:

func()
{
     python -i ~/Scripts/script.py
}

./Scripts/script.py它在我的主目录中运行得很好,但如果从其他任何地方运行它都找不到该目录。

错误信息是:

/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“Projects/sym.py”:[Errno 2]没有这样的文件或目录

最初不应该~直接指向主目录吗?

答案1

从错误信息来看:

/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“Projects/sym.py”:[Errno 2]没有这样的文件或目录

您可以看到您~/Scripts/script.py尝试使用相对路径引用另一个文件Projects/sym.py

当当前目录设置func为不包含Projects/sym.py.

如果您的目的是包含来自~/Projects/sym.py您需要在 Python 代码中使用绝对路径的文件,或者~func调用python.

相关内容