Python Ganti Nama File dan Direktori menggunakan os.rename()

โšก Ringkasan Cerdas

Python Mengubah nama file dan direktori dengan os.rename(). Di sini Anda akan mempelajari os.rename(), os.renames(), shutil.move(), dan pathlib Path.rename(), ditambah cara mengubah nama direktori dan mengubah nama beberapa file sekaligus dengan contoh yang jelas.

  • ๏ธ os.rename(): os.rename(src, dst) mengubah nama file atau direktori; sumbernya harus sudah ada.
  • ๏ธ os.renames(): os.renames() juga secara otomatis membuat folder tujuan yang hilang.
  • ๐Ÿšš shutil.move(): shutil.move() mengubah nama dan dapat memindahkan file antar sistem file.
  • ๐Ÿ pathlib: Path.rename() mengganti nama file dengan cara berorientasi objek (Python 3.4+).
  • ๐Ÿค– Bantuan AI: Alat AI seperti Copilot menghasilkan kode penggantian nama dan penggantian nama massal secara instan.

Python Mengganti nama file os.rename()

Python Ganti Nama File

Python ganti nama() berkas adalah metode yang digunakan untuk mengganti nama file atau direktori di Python pemrograman. Itu Python metode file rename() dapat dideklarasikan dengan meneruskan dua argumen bernama src (Sumber) dan dst (Tujuan).

Sintaksis

Ini adalah sintaks untuk metode os.rename()

os.rename(src, dst)

Parameter Teknis

src: Sumber adalah nama file atau direktori. Seharusnya sudah ada.

dst: Tujuan adalah nama baru dari file atau direktori yang ingin Anda ubah.

Contoh:

import os  
os.rename('guru99.txt','career.guru99.txt')

Mari kita lihat contoh secara detail

Anda dapat mengganti nama file asli, kami telah mengubah nama file dari โ€œGuruUbah โ€œ99.txtโ€ menjadi โ€œCareer.guru99.txt.โ€

Python Ganti Nama File

  • Untuk mengganti nama file โ€œguru99.txtโ€, kita akan menggunakan โ€œfungsi renameโ€ di modul OS
  • Jadi ketika kode dijalankan, Anda dapat mengamati bahwa file baru โ€œcareer.guru99.txtโ€ dibuat di sisi kanan panel, yang kami beri nama baru untuk file asli kami.

Berikut kode lengkapnya

import os
import shutil
from os import path

def main():
	# make a duplicate of an existing file
    if path.exists("guru99.txt"):
	# get the path to the file in the current directory
        src = path.realpath("guru99.txt");
		
	# rename the original file
        os.rename('guru99.txt','career.guru99.txt') 
		
if __name__ == "__main__":
    main()

Cara Mengganti Nama Direktori di Python

Metode os.rename() juga mengganti nama direktori, bukan hanya file. Berikan nama folder saat ini sebagai sumber dan nama baru sebagai tujuan.

import os
os.rename("old_directory", "new_directory")

Jika direktori sumber tidak ada, Python akan menimbulkan FileNotFoundError, jadi sebaiknya periksa jalurnya terlebih dahulu.

Mengganti Nama File Menggunakan os.renames()

Metode os.renames() mengubah nama file dan secara otomatis membuat direktori perantara yang hilang di jalur tujuan. Metode ini juga menghapus direktori kosong yang tertinggal di jalur sumber.

import os
os.renames("guru99.txt", "archive/2024/career.txt")

Di sini, folder archive dan 2024 akan dibuat secara otomatis jika belum ada.

Mengganti nama file menggunakan shutil.move()

Fungsi shutil.move() memindahkan file ke lokasi baru, yang secara efektif mengubah namanya jika tujuan pemindahan berada di direktori yang sama.

import shutil
shutil.move("guru99.txt", "career.guru99.txt")

Berbeda dengan os.rename(), shutil.move() juga dapat memindahkan file antar sistem file atau drive yang berbeda.

Mengganti Nama File Menggunakan Modul pathlib

In Python Pada versi 3.4 dan yang lebih baru, modul pathlib menawarkan metode Path.rename() berorientasi objek untuk mengganti nama file.

from pathlib import Path

file = Path("guru99.txt")
file.rename("career.guru99.txt")

Metode rename() mengembalikan objek Path baru yang menunjuk ke file yang telah diganti namanya.

Cara Mengganti Nama Beberapa File Sekaligus Python

Untuk mengganti nama banyak file sekaligus, lakukan perulangan pada file-file dalam direktori dengan os.listdir() dan panggil os.rename() untuk setiap file. Contoh di bawah ini menambahkan awalan angka ke setiap file.

import os

folder = "myfiles"
for count, filename in enumerate(os.listdir(folder)):
    new_name = f"file_{count}.txt"
    os.rename(os.path.join(folder, filename), os.path.join(folder, new_name))

Penggunaan os.path.join() memastikan kode tetap berfungsi dengan benar di sistem operasi apa pun.

Pertanyaan Umum Demo Slot

Impor os dan panggil os.rename(src, dst), dengan meneruskan nama file saat ini dan nama baru. File sumber harus sudah ada, atau Python Menimbulkan FileNotFoundError.

os.rename() mengganti nama satu file atau direktori, sedangkan os.renames() juga membuat direktori perantara yang hilang dan menghapus folder sumber kosong setelah pemindahan.

Ya. shutil.move(src, dst) mengubah nama file ketika tujuan berada di folder yang sama, dan juga dapat memindahkan file antar sistem file yang berbeda, tidak seperti os.rename().

Gunakan os.rename('old_dir', 'new_dir'). Fungsi os.rename() yang sama dapat digunakan untuk file maupun direktori, selama direktori sumbernya ada.

Lakukan perulangan pada os.listdir(folder) dan panggil os.rename() untuk setiap file. Gunakan os.path.join() untuk membangun jalur lengkap sehingga kode berfungsi di sistem operasi apa pun.

Asisten AI seperti GitHub Copilot melengkapi secara otomatis panggilan os.rename() dan pathlib, serta menghasilkan perulangan penggantian nama secara massal dari komentar yang menjelaskan pola penamaan yang Anda inginkan.

Ya. Alat berbasis AI dapat mengotomatiskan penulisan skrip penggantian nama massal, menerapkan pola seperti penomoran atau awalan tanggal, dan menambahkan penanganan kesalahan untuk nama yang hilang atau duplikat.

On Windowsos.rename() akan menimbulkan FileExistsError jika tujuan sudah ada. Pada Unix, ia akan menimpa file secara diam-diam. Periksa terlebih dahulu dengan os.path.exists() untuk menghindari kehilangan data.

Ringkaslah postingan ini dengan: