一、使用__file__屬性獲取文件名
Python中的每個腳本都有一個特殊的__file__屬性,它可以返回當前腳本文件的文件名,包括路徑。
import os script_path = os.path.abspath(__file__) print(script_path)
在這個示例中,我們導入了Python的os模塊,使用其中的abspath()函數,將當前腳本的相對路徑轉換為絕對路徑。使用__file__屬性獲取文件名後,我們就可以隨意地對其進行操作,例如使用os.path.dirname()函數獲取當前腳本所在的目錄。
二、使用sys.argv獲取腳本名稱
另一種獲取當前腳本文件名的方法是使用sys.argv。sys.argv是一個包含命令行參數的字元串列表,其中第一個元素是當前腳本的文件名。
import os import sys script_name = os.path.basename(sys.argv[0]) print(script_name)
在這個示例中,我們使用Python標準庫中的os.path.basename()函數獲取腳本的文件名。因為sys.argv[0]保存的是腳本的完整路徑,包括路徑和文件名,因此我們需要使用os.path.basename()函數獲取不包含路徑的文件名。
三、使用inspect模塊獲取文件名
使用Python標準庫中的inspect模塊可以獲取當前腳本的文件名。
import inspect script_filename = inspect.getframeinfo(inspect.currentframe()).filename print(script_filename)
在這個示例中,使用inspect.currentframe()函數獲取當前堆棧幀信息,getframeinfo()函數從棧幀信息中獲取當前腳本的文件名。這種方法與前兩種方法相比較相對複雜,但是在一些特殊情況下會更加有用。
四、總結
以上介紹了三種獲取Python腳本文件名的方法,包括使用__file__屬性、sys.argv和inspect模塊。使用這些方法可以方便地獲取當前腳本文件名,並且可以通過進一步處理、分析、操作來實現更多的功能。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/207033.html