一、os.basename的含義與作用
Python中的os.basename()方法用於從路徑中分離出文件名,返迴文件名部分,如果路徑以 / 或 \ 結尾則返回空值。
os.basename()方法可以將路徑字元串分解為目錄和文件名,僅返回最後一個部分。通俗的說,如果你只是想得到一個路徑字元串中最後的文件名,可以使用os.basename()方法。
二、os.basename的使用方法
使用os.basename()方法非常簡單,只需要傳入帶文件名的路徑字元串即可。下面我們來看一個示例。
import os path = "/home/user/folder/file.txt" filename = os.path.basename(path) print("文件名為:", filename)
上述代碼的輸出為:
文件名為: file.txt
上述代碼的意思是將「/home/user/folder/file.txt」這個路徑字元串傳入os.basename()方法中,得到它的文件名並列印出來。
三、os.basename的示例應用
1. 刪除指定文件夾中的特定文件
有時候,我們需要刪除一個文件夾中特定的文件。可以使用os.listdir()方法得到文件夾中所有文件的文件名列表,並通過os.path.join()方法將它們和文件夾路徑組合在一起,再通過os.path.getmtime()方法獲取文件創建時間,最後通過os.remove()方法就可以將我們想要刪除的文件刪除掉。
import os folder_path = "/home/user/folder" files_to_remove = ["file1.txt", "file2.txt", "file3.txt"] for file in os.listdir(folder_path): filename = os.path.basename(os.path.join(folder_path, file)) if filename in files_to_remove: os.remove(os.path.join(folder_path, file))
2. 批量更改文件名
有時候,我們需要批量更改文件名。可以使用os.listdir()方法得到文件夾中所有文件的文件名列表,並通過os.path.join()方法將它們和文件夾路徑組合在一起,再使用os.rename()方法來更改文件名。
import os folder_path = "/home/user/folder" new_files_names = ["new_file1.txt", "new_file2.txt", "new_file3.txt"] i = 0 for file in os.listdir(folder_path): old_filename = os.path.join(folder_path, file) new_filename = os.path.join(folder_path, new_files_names[i]) os.rename(old_filename, new_filename) i += 1
3. 清空文件夾
有時候,我們需要清空一個文件夾中的所有文件。可以使用os.listdir()方法得到文件夾中所有文件的文件名列表,並通過os.path.join()方法將它們和文件夾路徑組合在一起,再使用os.remove()方法將它們一個個刪除。
import os folder_path = "/home/user/folder" for file in os.listdir(folder_path): filename = os.path.join(folder_path, file) os.remove(filename)
四、總結
Python中的os.basename()方法是一個非常有用的方法,可以在處理路徑相關的問題時提高代碼執行的效率。通過本文的介紹與示例,相信讀者對這個方法有了更深入的理解,並能夠在日常開發中靈活使用它。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/311297.html