Python获取脚本所在路径的方法

  • 背景
        python脚本1使用了相对路径,如果调用该脚本1的脚本2另外位于不同目录时,就会出现路径错误的情况,原因是相对路径会按照脚本2的路径来匹配相对路径,这样就出现了问题。

  • 解决方法

    • python
           代码如下。__file__返回脚本的名称,os.path.realpath获取脚本的绝对路径,而os.path.split会把文件的路径和文件名分开,返回一个(路径, 文件名)的元祖,因此,就可以获取到脚本所在路径了。

      import os.pathos.path.split(os.path.realpath(__file__))[0]
    • shell
           代码如下。  0dirnamecdpwd 0和dirname前都加上了双引号,是为了防止路径中有空格之类的字符,获取路径会出现错误。

      $(cd "$(dirname "$0")"; pwd)

你可能感兴趣的:(python,shell,Path)