python的os模組的常見函式及用途詳解

风雨后见彩虹發表於2024-09-16

os模組提供了與作業系統進行互動的功能。它允許你執行許多常見的檔案系統任務,如讀取目錄、處理檔案、獲取系統資訊等。以下是一些os模組中常見的函式及其用途:

目錄操作

  • os.getcwd():返回當前工作目錄的字串表示。
  • os.listdir(path):返回指定目錄下的檔案和子目錄列表。
  • os.mkdir(path):建立一個新目錄。
  • os.rmdir(path):刪除一個空目錄。
  • os.path.exists(path):檢查路徑是否存在。
  • os.path.isdir(path):檢查路徑是否是一個目錄。
  • os.path.isfile(path):檢查路徑是否是一個檔案。
  • os.path.join(path, *paths):將多個路徑元件智慧地連線起來。

檔案操作

雖然os模組主要用於目錄操作,但它也提供了一些基本的檔案操作功能,但更常見的檔案操作是使用內建的open()函式和檔案物件的方法。然而,os模組中的os.path子模組提供了許多與檔案路徑相關的實用函式。

  • os.path.getsize(path):返回指定檔案的大小(以位元組為單位)。
  • os.path.abspath(path):返回指定檔案的絕對路徑。
  • os.path.splitext(path):將路徑拆分為檔名和副檔名。
  • os.path.basename(path):返回路徑中的檔名。
  • os.path.dirname(path):返回路徑中的目錄名。

系統相關

  • os.name:返回描述正在使用的平臺的字串。例如,在Windows上,它返回'nt';在Unix/Linux上,它返回'posix'
  • os.system(command):在子shell中執行指定的命令,並等待命令完成。注意:使用這個函式時要特別小心,因為它可能允許執行惡意程式碼。
  • os.environ:一個表示環境變數的字典。你可以透過它讀取或設定環境變數。
  • os.getpid():返回當前程序的ID。
  • os.getppid():返回父程序的ID。
  • os.walk(top):生成給定目錄及其所有子目錄中的檔案和目錄。這是一個非常有用的函式,用於遍歷目錄樹。

程序管理(高階功能)

雖然這超出了基礎範圍,但os模組還包含一些與程序管理相關的函式,如os.fork()(在Unix系統上建立新程序)、os.execv()(執行新程式)等。這些函式在更高階的應用程式中可能很有用,但通常不是初學者的主要關注點。

其他實用功能

  • os.sep:表示路徑元件之間的分隔符(例如,在Unix上是'/',在Windows上是'\\')。
  • os.linesep:表示當前平臺使用的行終止符(例如,在Unix上是'\n',在Windows上是'\r\n')。
  • os.pathsep:用於在列表中分隔多個路徑的字元(例如,在Unix和Windows上都是:,但在Windows上,當使用os.environ時,它實際上是;)。
  • os.urandom(size):返回一個包含隨機位元組的字串,長度由size指定。這可以用於生成加密金鑰等。

相關文章