پرسش

چطور می‌تونم یک فایل یا پوشه رو در پایتون حذف کنم؟

How can I delete a file or folder in Python?

چطوری توی پایتون یک فایل یا یک پوشه رو حذف کنم؟

1403/05/29
پاسخ
رضا دولتی عاشق برنامه نویسی و هوش مصنوعی!
بیوگرافی رضا دولتی

برای حذف کردن یک فایل یا پوشه در پایتون می‌تونی از ماژول os استفاده کنی. این ماژول چند تابع مفید داره که برات کار رو راحت می‌کنه.

اگه می‌خوای فقط یه فایل رو حذف کنی، می‌تونی از تابع os.remove() استفاده کنی. ولی اگه می‌خوای یه پوشه رو حذف کنی، باید از os.rmdir() استفاده کنی که فقط پوشه‌های خالی رو پاک می‌کنه. اگه پوشه‌ای داری که شامل فایل‌ها یا زیرپوشه‌هاست، بهتره از تابع shutil.rmtree() استفاده کنی که می‌تونه کل پوشه و محتویاتش رو حذف کنه.

حالا بیا یه مثال با هم ببینیم:

import os
import shutil
# remove file
file_path = 'path/to/file.txt'
if os.path.exists(file_path):
    os.remove(file_path)
    print(f"{file_path} has been deleted")
else:
    print(f"{file_path} does not exist")
# remove empty directory
folder_path = 'path/to/folder'
if os.path.exists(folder_path):
    os.rmdir(folder_path)
    print(f"{folder_path} has been deleted")
else:
    print(f"{folder_path} does not exist")
# remove a directory with contents
folder_with_contents = 'path/to/folder_with_contents'
if os.path.exists(folder_with_contents):
    shutil.rmtree(folder_with_contents)
    print(f"{folder_with_contents} has been deleted with all its contents")
else:
    print(f"{folder_with_contents} does not exist")

- os.remove(): این تابع فقط فایل‌ها رو حذف می‌کنه.

- os.rmdir(): این تابع فقط پوشه‌های خالی رو حذف می‌کنه.

- shutil.rmtree(): این تابع پوشه‌ها و تمام محتویات داخلشون رو پاک می‌کنه.

حتما مطمئن شو که مسیر فایل یا پوشه رو درست وارد کردی و همیشه قبل از حذف کردن یه بررسی بکنی که اون فایل یا پوشه وجود داره یا نه، چون اگه فایل یا پوشه‌ای وجود نداشته باشه و بخوای حذفش کنی، برنامه با خطا مواجه می‌شه.

پاسخ: 1403/05/29
آخرین آپدیت: 1403/07/14