Python OS 檔案/目錄方法

你好,有志於成為 Python 程式設計師的你!今天,我們將深入探討如何使用 Python 的 OS 模組來操作檔案和目錄。作為你親切友善的電腦老師,我會逐步引導你走過這段旅程,確保你瞭解每個概念。所以,拿起你最喜歡的飲料,放鬆一下,我們開始冒險吧!

Python - OS File/Directory Methods

介紹 OS 模組

在我們深入檔案和目錄操作之前,先來了解一下 OS 模組到底是什麼。

Python 的 OS 模組提供了一種與作業系統互動的方式。它就像是你 Python 程式碼和底層系統之間的一座神奇橋樑,讓你能够對檔案和目錄進行各種操作。

要使用 OS 模組,我們首先需要導入它:

import os

現在我們已經導入了我們信賴的 OS 模組,讓我們來探索它一些用於操作檔案和目錄的最有用的方法。

檔案操作

檢查檔案是否存在

你可能首先想要做的是檢查一個檔案是否存在。以下是如何做到這一點:

import os

file_path = "C:/Users/YourName/Documents/my_file.txt"
if os.path.exists(file_path):
print("該檔案存在!")
else:
print("該檔案不存在。")

在這個例子中,我們使用 os.path.exists() 來檢查指定路徑下的檔案是否存在。如果存在,我們列印一個開心的訊息;如果不存在,我們則通知使用者。

創建新檔案

現在,讓我們創建一個新檔案:

import os

file_path = "C:/Users/YourName/Documents/new_file.txt"
with open(file_path, 'w') as file:
file.write("Hello, World!")

print(f"已經在 {file_path} 創建了一個新檔案")

在這裡,我們使用 open() 函數和 'w' 模式(寫入模式)來創建一個新檔案。然後我們在檔案中寫入 "Hello, World!" 並使用 with 語句自動關閉它。

重命名檔案

有時,你可能想要重命名一個檔案。以下是如何做到這一點:

import os

old_name = "C:/Users/YourName/Documents/old_file.txt"
new_name = "C:/Users/YourName/Documents/new_file.txt"

os.rename(old_name, new_name)
print(f"檔案已從 {old_name} 重命名為 {new_name}")

os.rename() 函數接受兩個參數:檔案的當前名稱和你想要給它的新名稱。

刪除檔案

對這個要小心!刪除檔案是一個強大的操作,所以在運行這段代碼前一定要再三檢查:

import os

file_to_delete = "C:/Users/YourName/Documents/unwanted_file.txt"

if os.path.exists(file_to_delete):
os.remove(file_to_delete)
print(f"檔案 {file_to_delete} 已被刪除。")
else:
print("該檔案不存在。")

我們首先使用 os.path.exists() 檢查檔案是否存在,如果存在,我們使用 os.remove() 來刪除它。

目錄操作

現在我們已經涵蓋了檔案操作,讓我們來處理目錄。

創建新目錄

創建一個新目錄簡單到:

import os

new_dir = "C:/Users/YourName/Documents/NewFolder"

if not os.path.exists(new_dir):
os.mkdir(new_dir)
print(f"目錄 {new_dir} 創建成功!")
else:
print("目錄已經存在。")

我們使用 os.mkdir() 來創建一個新目錄。但我們首先檢查它是否存在,以避免任何錯誤。

列出目錄內容

想要看看目錄內有什麼?以下是如何做到:

import os

dir_path = "C:/Users/YourName/Documents"

contents = os.listdir(dir_path)
print("目錄內容:")
for item in contents:
print(item)

os.listdir() 會返回指定目錄中所有檔案和子目錄的列表。

改變當前工作目錄

你可以像這樣改變你的當前工作目錄:

import os

new_working_dir = "C:/Users/YourName/Desktop"

os.chdir(new_working_dir)
print(f"當前工作目錄已更改為:{os.getcwd()}")

os.chdir() 改變當前工作目錄,而 os.getcwd() 則返回當前工作目錄。

刪除目錄

最後,讓我們看看如何刪除目錄:

import os

dir_to_remove = "C:/Users/YourName/Documents/OldFolder"

if os.path.exists(dir_to_remove):
os.rmdir(dir_to_remove)
print(f"目錄 {dir_to_remove} 已被刪除。")
else:
print("該目錄不存在。")

os.rmdir() 刪除指定的目錄,但只有當它是空的時候。如果你需要刪除一個目錄及其所有內容,你將需要使用 shutil 模組,這將在我們未來的課程中介紹。

OS 檔案/目錄方法總結

以下是 we've 覆蓋的方法的便捷表格:

方法 描述
os.path.exists() 檢查檔案或目錄是否存在
os.rename() 重命名檔案或目錄
os.remove() 刪除檔案
os.mkdir() 創建新目錄
os.listdir() 列出目錄內容
os.chdir() 改變當前工作目錄
os.getcwd() 獲取當前工作目錄
os.rmdir() 刪除空目錄

結論

恭喜!你剛剛已經踏出了使用 Python 的 OS 模組進行檔案和目錄操作的第一步。請記住,巨大的力量帶來巨大的責任——在修改檔案和目錄時要特別小心,特別是在刪除它們的時候。

隨著你繼續 Python 的旅程,你會發現這些檔案和目錄操作對於數據處理、檔案組織甚至建立你自己的檔案管理系統都非常有用。

繼續練習,保持好奇心,並祝編程愉快!

Credits: Image by storyset