【问题标题】:Parse the executing file path [duplicate]解析执行文件路径[重复]
【发布时间】:2012-11-20 21:38:29
【问题描述】:

可能重复:
Retrieving python module path
python, path of script

我有一个 Python 文件,我想在执行该文件时解析路径。如果我这样运行 myPython.py:

python ~/Documents/Project/myPython.py

我想知道文件 myPython.py 中的路径“~/Documents/Project/”。

【问题讨论】:

    标签: python path


    【解决方案1】:

    只是你需要在py文件中写两条语句:

              import sys
              print sys.argv[0] 
    

    【讨论】:

      【解决方案2】:

      这个例子应该很有帮助:

      test.py:

      import os
      
      print 'Script directory: ' + os.path.realpath(os.path.dirname(__file__))
      print 'Working directory: ' + os.getcwd()
      

      终端执行:

      $ cd ~
      $ python ~/桌面/test.py
      脚本目录:/Users/tomas/Desktop
      工作目录:/Users/tomas

      【讨论】:

        【解决方案3】:

        sys.argv[0] 是 Python 执行的脚本的路径。您可以使用 os.path.dirname() 从中获取目录名称:

        import sys, os
        print os.dirname(sys.argv[0])
        

        如果是在命令行输入的完整路径,则取决于操作系统; Mac OS X 和 Linux 都包含该路径。

        但是,路径可能会根据 Python 调用它的方式而有所不同。另一种方法是使用__file__,您可以使用os.path.abspath()os.path.expanduser() 将路径设为绝对路径以涵盖所有变体:

        print os.path.dirname(os.path.abspath(os.path.expanduser(__file__)))
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-06-05
          • 2013-06-04
          • 1970-01-01
          • 2014-04-07
          • 2016-09-15
          • 2014-01-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多