Python如何獲取當前執行檔案路徑?

老男孩IT教育機構發表於2024-01-22

  在Python中,我們經常需要獲取當前執行檔案路徑,因此為了方便Python也提供了多種方法來實現該需求,那麼Python如何獲取當前執行檔案路徑?以下是常用方法介紹,希望對你有用。

  1、使用os模組

  os模組是Python中用於處理作業系統相關任務的標準庫之一。其中,os.path模組提供了許多方法來處理檔案路徑。我們可以使用os.path.abspath()方法來獲取當前執行檔案的絕對路徑:

  ```python

  import os

  current_path = os.path.abspath(__file__)

  print(current_path)

  ```

  這將輸出當前執行檔案的絕對路徑,例如:

  ```

  /home/user/project/main.py

  ```

  需要注意的是,__file__變數表示當前執行檔案的路徑,但在互動式環境中無法使用。

  2、使用sys模組

  sys模組是Python中用於訪問與Python直譯器互動的變數和函式的標準庫之一。其中,sys.argv變數儲存了命令列引數的列表,第一個元素為當前執行檔案的路徑。我們可以使用os.path.abspath()方法來獲取當前執行檔案的絕對路徑:

  ```python

  import os

  import sys

  current_path = os.path.abspath(sys.argv[0])

  print(current_path)

  ```

  這將輸出當前執行檔案的絕對路徑,例如:

  ```

  /home/user/project/main.py

  ```

  需要注意的是,sys.argv變數中的路徑可能是相對路徑,需要使用os.path.abspath()方法轉換為絕對路徑。

  3、使用inspect模組

  inspect模組是Python中用於解析Python原始檔或物件的資訊的標準庫之一。其中,inspect.getfile()方法可以獲取指定物件所在的檔案路徑。我們可以使用inspect.getframeinfo()方法來獲取當前執行檔案的路徑:

  ```python

  import inspect

  current_path = inspect.getframeinfo(inspect.currentframe()).filename

  print(current_path)

  ```

  這將輸出當前執行檔案的絕對路徑,例如:

  ```

  /home/user/project/main.py

  ```

  需要注意的是,inspect模組可能會影響Python程式碼的效能,因此不建議在生產環境中頻繁使用。


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/69952527/viewspace-3004676/,如需轉載,請註明出處,否則將追究法律責任。

相關文章