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