Menghapus file dan direktori di Python ⋆ ALexHost SRL
Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills
03.06.2025

Menghapus file dan direktori di Python

Dalam Python, bekerja dengan file dan direktori adalah tugas yang umum dilakukan, terutama untuk aplikasi yang membutuhkan manipulasi file. Tutorial ini berfokus pada metode lanjutan untuk menghapus file dan direktori menggunakan berbagai modul Python, termasuk os, shutil, dan pathlib. Masing-masing modul ini menyediakan fungsionalitas yang berbeda untuk bekerja dengan sistem berkas, sehingga Anda dapat mengelola berkas dan direktori secara efisien. Untuk mengunduh Python, kunjungi tautan berikut ini dari sumber resmi python.org.

Memahami modul-modul

1. Modul os

Modul os menyediakan kemampuan untuk menggunakan fungsionalitas yang bergantung pada sistem operasi, seperti membaca atau menulis ke sistem file. Ini termasuk fungsi penghapusan file dan direktori. Menggunakan modul os dalam lingkungan hosting VPS Linux memberikan kontrol yang efektif atas manajemen file dan operasi tingkat sistem lainnya. Modul ini memungkinkan pengembang untuk melakukan tindakan seperti membaca, menulis, dan menghapus file dan direktori secara langsung di server

Fitur utama:

  • os.remove(path): Menghapus jalur ke sebuah file.
  • os.rmdir(path): Menghapus (menghancurkan) jalur ke sebuah direktori. Direktori harus kosong.
  • os.unlink(path): Nama lain dari fungsi os.remove() yang digunakan untuk menghapus sebuah file.

2. Modul shutil

Modul shutil menawarkan antarmuka tingkat tinggi untuk bekerja dengan file. Modul ini sangat berguna untuk menyalin dan menghapus direktori dan file.

Fitur utama:

  • shutil.rmtree(path): Secara rekursif menghapus direktori dan semua isinya, termasuk subdirektori dan file.
  • shutil.move(src, dst): Memindahkan file atau direktori ke lokasi lain. Dapat juga digunakan untuk menghapus file dengan memindahkannya ke direktori yang tidak ada.

3. Modul Pathlib

Modul pathlib menyediakan pendekatan berorientasi objek untuk bekerja dengan jalur sistem berkas. Modul ini muncul pada Python 3.4 dan dianggap lebih intuitif dan lebih mudah dibaca.

Fitur utama:

  • Path.unlink(): Menghapus file.
  • Path.rmdir(): Menghapus direktori kosong.
  • Path.rmtree(): Untuk menghapus direktori dan isinya, shutil.rmtree() biasanya digunakan bersama dengan Path.

Metode lanjutan untuk menghapus file dan direktori

Menggunakan modul os

Berikut ini cara menggunakan modul os untuk menghapus file dan direktori:

Opsi A: Menjalankan dalam Python Interaktif

  1. Buka sesi Python interaktif dengan mengetik:
    python3

    (Gunakan python jika itu adalah bagaimana Python dikonfigurasi pada sistem Anda, tetapi python3 biasanya merupakan perintah yang direkomendasikan untuk Python 3.x).

  2. Salin dan tempelkan kode langsung ke dalam sesi interaktif (skrip di bawah ini)

burung B: Menulis ke file skrip Python

  1. Buat file baru menggunakan editor teks seperti nano:
    nano hapus_file.py
  2. Salin dan tempelkan kode berikut ini ke dalam berkas (skrip di bawah)
  3. Anda sekarang dapat menjalankan skrip Python Anda dari terminal:
    python3 hapus_file.py

Menghapus satu berkas

import os
file_path = 'example.txt'
try:
os.remove(file_path)
print(f'Successfully deleted {file_path}')
except FileNotFoundError:
print(f'The file {file_path} does not exist')
except PermissionError:
print(f'Permission denied: unable to delete {file_path}')
except Exception as e:
print(f'An error occurred: {e}')

Keluaran:

Menghapus direktori kosong

Langkah 1: Membuat direktori

Pertama, buat direktori kosong bernama example_dir. Hal ini dapat dilakukan dengan menggunakan perintah berikut:

mkdir example _dir

Langkah 2: Membuat skrip Python

Sekarang Anda perlu membuat skrip Python yang berisi kode untuk menghapus direktori kosong. Anda bisa menggunakan editor teks seperti nano untuk membuat skrip.

  1. Buka nano dan buat file Python baru:
    nano hapus_direktori.py
  2. Salin dan tempelkan kode berikut ini ke dalam berkas (kode di bawah)
  3. Sekarang jalankan skrip Python yang baru saja Anda buat:
    python3 hapus_direktori.py

import os
directory_path = 'example_dir'
try:
os.rmdir(directory_path)

f'Successfully deleted directory {directory_path}')
except FileNotFoundError:
print(f'The directory {directory_path} does not exist')
except OSError:
print(f'The directory {directory_path} is not empty')
except Exception as e:
print(f'An error occurred: {e}')

Keluaran:

Menggunakan modul shutil

Langkah 1: Membuat direktori dengan konten

Pertama, buat sebuah direktori bernama example_dir_with_content dan tambahkan beberapa file ke dalamnya. Hal ini dapat dilakukan dengan menggunakan perintah berikut:

mkdir example_dir_with_content
touch example_dir_with_content/file1.txt
touch example_dir_with_content/file2.txt

Langkah 2: Membuat skrip Python

Sekarang Anda perlu membuat skrip Python yang berisi kode untuk menghapus direktori dan isinya. Anda dapat menggunakan editor teks seperti nano untuk membuat skrip.

  1. Buka nano dan buat file Python baru:
    nano hapus_direktori_konten.py
  2. Salin dan tempelkan kode berikut ini ke dalam berkas (kode di bawah)
  3. Sekarang jalankan skrip Python yang baru saja Anda buat:
    python3 hapus_direktori_konten.py

Gunakan shutil.rmtree() untuk menghapus direktori dengan konten:

import shutil
'example_dir_with_content'
try:
shutil.rmtree(directory_path)
print(f'Successfully deleted directory {directory_path} and its contents')
except FileNotFoundError:
print(f'The directory {directory_path} does not exist')
except PermissionError:
print(f'Permission denied: unable to delete {directory_path}')
except Exception as e:
print(f'An error occurred: {e}')

Keluaran:

Menggunakan modul pathlib

modul pathlib menyediakan antarmuka modern untuk jalur sistem file:

Menghapus berkas

from pathlib import Path
file_path = Path('example.txt')
try:
file_path.unlink()
print(f'Successfully deleted {file_path}')
except FileNotFoundError:
print(f'The file {file_path} does not exist')
except PermissionError:
print(f'Permission denied: unable to delete {file_path}')
except Exception as e:
print(f'An error occurred: {e}')

Keluaran:

Menghapus direktori kosong

from pathlib import Pathdirectory_path = Path('example_dir'
try:
directory_path.rmdir() # This will only work if the directory is empty
print(f'Successfully deleted directory {directory_path}')
except FileNotFoundError:
print(f'The directory {directory_path} does not exist')
except OSError:
print(f'The directory {directory_path} is not empty')
except Exception as e:
print(f'An error occurred: {e}')

Keluaran:

Penanganan kesalahan yang anggun

Ketika bekerja dengan operasi file, sangat penting untuk menangani pengecualian dengan baik agar program tidak mengalami crash. Pengecualian yang umum termasuk:

  • FileNotFoundError: Terjadi ketika ada upaya untuk menghapus file atau direktori yang tidak ada.
  • PermissionError: Terjadi ketika pengguna tidak memiliki izin yang diperlukan untuk menghapus file atau direktori.
  • OSError: Terjadi ketika berbagai kesalahan terkait OS terjadi, termasuk upaya menghapus direktori yang tidak kosong.

Kesimpulan

Dalam tutorial ini, kita telah membahas cara menggunakan modul-modul Python seperti os, shutil, dan pathlib untuk menghapus file dan direktori. Setiap modul memiliki kelebihan yang unik, dan memahami cara menggunakannya secara efektif akan memperluas kemampuan Anda untuk mengelola sistem file dalam aplikasi Anda. Dengan menguasai teknik-teknik ini, Anda akan dapat mengotomatiskan tugas-tugas manajemen file, bekerja dengan file secara lebih intuitif, dan menulis skrip yang kuat yang berinteraksi dengan sistem file.

Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills