Apakah Anda ingin meningkatkan keterampilan Python Anda? Kemudian Anda dapat mencoba melakukan beberapa tugas di komputer Anda dengan Python. Menyalin dan menempel file dari satu direktori ke direktori lain dengan Python adalah cara yang menyenangkan untuk melakukan ini.

Selain menyenangkan, ini memungkinkan Anda membaca dan menulis file dengan cepat tanpa terganggu oleh kode Anda. Jika Anda baru mengenal Python, itu adalah keterampilan yang mungkin masih perlu Anda pelajari dengan satu atau lain cara. Jadi, mari cari tahu cara menyalin file dengan Python melalui posting ini.

Persyaratan untuk Menyalin File Dengan Python

Ada banyak cara untuk menyalin dan menempel file dengan Python. Jadi, persyaratan untuk melakukannya bervariasi dan tergantung pada metode yang Anda putuskan untuk digunakan.

Meskipun Anda mungkin tidak memerlukan modul tambahan untuk menyalin file dengan Python, Anda masih dapat menggunakan pustaka bawaan jika Anda mau.

Misalnya, jika Anda ingin menggunakan file os

metode, Anda perlu mengimpornya ke dalam kode Anda. Namun, salah satu cara populer untuk menyalin file dengan Python adalah menggunakan diam Perpustakaan.

Mari kita lihat bagaimana kita dapat menggunakan berbagai metode ini untuk menyalin file dengan Python.

Cara Menyalin File Menggunakan Library Shutil Built-in Python

Itu diam module adalah pustaka Python bawaan dan kuat untuk membaca dan menulis file dengan cepat menggunakan Python.

Untuk menggunakannya, Anda hanya perlu menyediakan jalur lengkap file sumber dan tujuan.

Intinya, diam mengambil format ini:

shutil.copy ([path direktori sumber], [path direktori tujuan], follow_symlinks = True)

Misalnya, kode di bawah ini menggunakan shutil.copy () untuk menyalin file bernama copy.txt dari folder bernama folder saya menjadi yang lain bernama tujuan. Ini kemudian mengganti nama file tujuan sebagai newFile.txt:

impor tutup
sourceFile = "C: /Users/some_directories/my_folder/copy.txt"
destinationFile = "C: /Users/some_directories/destination/newFile.txt"
shutil.copy (sourceFile, destinationFile, follow_symlinks = True)

Perhatikan bahwa Anda dapat menulis kode Anda editor kode apa pun pilihan Anda. Anda kemudian dapat menjalankannya menggunakan baris perintah.

Namun, Anda juga dapat menggunakan Python Integrated Development Environment (IDLE) default jika Anda tidak terbiasa menjalankan Python melalui baris perintah.

Terkait: Perintah Command Prompt (CMD) yang Harus Anda Ketahui

Itu shutil.copy metode tidak menyalin metadata dari file sumber. Intinya, mesin Anda melihat file tujuan sebagai file baru sepenuhnya dan memberinya metadata baru.

Namun, untuk menyalin metadata bersama dengan file aslinya, gunakan shutil.copy2 metode:

impor tutup
shutil.copy2 (sourceFile, destinationFile, follow_symlinks = True)

Metode di atas mempertahankan metadata asli dari file lama di file tujuan. Misalnya, file tujuan mempertahankan tanggal Anda membuat file sumber, ukurannya, dan atribut lainnya.

Itu follow_symlinks argumen adalah deklarasi tautan simbolis yang memungkinkan diam ikuti jalan yang mutlak. Oleh karena itu, Anda perlu memasukkannya jika file sumber dan tujuan berada di direktori yang berbeda.

Tetapi jika kedua file berada di direktori kerja Anda saat ini, Anda tidak perlu menyertakan file follow_symlinks. Jika Anda melakukannya, Python memunculkan pengecualian sintaks.

Jadi, jika Anda menempelkan file sumber ke direktori kerja Anda saat ini, kode Anda akan terlihat seperti ini:

impor tutup
shutil.copy2 (sourceFile, destinationFile)

Selain menggunakan metode shutil di atas, Anda juga bisa menggunakan shutil.copyfile atau shutil.copyfileobj.

Menggunakan shutil.copyfileobj sedikit berbeda karena memerlukan bawaan Buka fungsi. Kemudian, Anda perlu membaca dan menulis biner dengan menyertakan "rb" dan "wb" argumen.

Mari kita lihat bagaimana shutil.copyfileobj metode bekerja menggunakan direktori yang sama yang kita gunakan sebelumnya:

impor tutup
sourceFilePath = open ("C: /Users/some_directories/my_folder/copy.txt", "rb")
destinationFilePath = open ("C: /Users/some_directories/destination/newFile.txt", "wb")
shutil.copyfileobj (sourceFilePath, destinationFilePath)

Catat itu shutil.copyfileobj () tidak membutuhkan follow_symlinks argumen.

Namun, shutil.copyfile () bekerja dengan cara yang sama .salinan dan .copy2 tidak. Mereka hanya sedikit berbeda dalam fungsi internalnya.

Untuk menggunakan shutil.copyfile () metode:

impor tutup
sourceFilePath = "C: /Users/some_directories/my_folder/copy.txt"
destinationFilePath = "C: /Users/some_directories/destination/newFile.txt"
shutil.copyfile (sourceFilePath, destinationFilePath)

Cara Menyalin File Dengan Modul os

Itu os modul menggunakan dua metode built-in untuk menyalin file; os.system () dan os.popen () metode.

Itu os.system () metode memungkinkan Anda untuk meniru lingkungan baris perintah.

Namun, kekurangan dari metode os adalah mereka hanya menyalin file di dalam direktori kerja Anda saat ini.

Untuk menggunakan os.system () metode di Windows:

impor os
os.system ('salin source.txt destination.txt)

Anda juga dapat menggunakan bawaan xcopy Perintah terminal Windows:

impor os
os.system ('xcopy source.txt destination.txt)

Untuk menggunakan sistem operasi metode di Linux, ganti salinan dengan cp:

impor os
os.system ('cp source.txt tujuan.txt)

Cara Menyalin File Menggunakan Metode os.popen

Untuk menggunakan metode ini, ganti os.system () dengan os.popen ().

Di Windows, gunakan:

impor os
os.popen ('salin source.txt destination.txt)

Seperti yang kami lakukan dengan os.system (), ganti salinan dengan cp untuk menggunakan metode ini di Linux:

impor os
os.popen ('cp source.txt tujuan.txt)

Cara Menyalin File Dengan Modul subproses Python

Selain metode di atas, Anda juga dapat menggunakan file subproses () perpustakaan untuk menyalin file dengan Python:

impor subproses sebagai sp
sp.call ("salin sourceFile destinationFile", shell = True)

Namun, di Linux, gunakan:

impor subproses sebagai sp
sp.call ("cp sourceFile destinationFile", shell = True)

Itu subproses perpustakaan juga menggunakan subprocess.check_out () metode. Cara kerjanya sama subprocess.call () tidak:

impor subproses sebagai sp
sp.check_out ("salin sourceFile destinationFile", shell = True)

Di Linux, ganti salinan dengan cp:

impor subproses sebagai sp
sp.check_out ("cp sourceFile destinationFIle", shell = True)

Namun, seperti metode os, metode subproses hanya bekerja dengan file di direktori kerja Anda saat ini.

catatan: Anda juga dapat menyalin file ke dalam folder jika berada di direktori kerja yang sama dengan file sumber. Yang perlu Anda lakukan adalah mengganti nama file tujuan dengan nama folder tujuan. Namun, pastikan folder tujuan dan file sumber ada di direktori kerja Anda saat ini.

Cara Menyalin File dengan Python Tanpa Menggunakan Perpustakaan

Anda juga dapat menyalin file dengan Python tanpa bergantung pada pustaka mana pun. Seperti metode shutil, Anda hanya memerlukan path lengkap dari direktori sumber dan tujuan.

Berikut cara mencapai ini:

sourcePath = "C: /Users/source_directories/my_folder/copy.txt"
destinationPath = "C: /Users/some_directories/destination_directories/newFile.txt"
dengan open (sourcePath, "rb") sebagai dibaca:
dengan open (destinationPath, "wb") sebagai myfile:
myfile.write (read.read ())

Untuk buat kode dapat digunakan kembali, Anda dapat memodifikasinya menjadi fungsi:

def copyFile (sumber = Tidak ada, tujuan = Tidak ada):
jika tidak (sumber dan tujuan) == Tidak ada:
dengan open (sumber, "rb") sebagai dibaca:
dengan open (tujuan, "wb") sebagai myfile:
myfile.write (read.read ())
lain:
print ("Harap masukkan jalur sumber dan tujuan")
copyFile (sourcePath, destinationPath)

Itu dia. Anda baru saja membuat mesin fotokopi file yang dapat digunakan kembali dengan Python tanpa menggunakan pustaka apa pun.

Tetap Mengotomatiskan Tugas Dengan Python

Selain membantu Anda tetap fokus pada kode Anda saat membangun proyek, menyalin file dengan Python memungkinkan Anda lebih memahami manajemen file dengan Python. Namun, bermain-main dengan tugas Python adalah cara untuk meningkatkan keterampilan Python Anda, terutama jika Anda seorang pemula.

Misalnya, Anda dapat mengubah tanggal dan waktu pada PC Anda dengan modul os. Anda bahkan dapat menulis perintah bash khusus dengan Python jika Anda mau.

Surel
Cara Membuat Program Baris Perintah Anda Sendiri dengan Python Dengan Klik

Ingin membuat program baris perintah Python Anda sendiri tetapi merasa terlalu sulit? Gunakan Click, alat Python yang berguna untuk merampingkan kode Anda.

Topik-topik terkait
  • Pemrograman
  • Python
Tentang Penulis
Idowu Omisola (56 Artikel Dipublikasikan)

Idowu sangat tertarik dengan teknologi pintar dan produktivitas apa pun. Di waktu luangnya, dia bermain-main dengan coding dan beralih ke papan catur ketika dia bosan, tetapi dia juga suka melepaskan diri dari rutinitas sesekali. Semangatnya untuk menunjukkan kepada orang-orang tentang teknologi modern memotivasinya untuk menulis lebih banyak.

Selebihnya Dari Idowu Omisola

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk mendapatkan tip teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Satu langkah lagi…!

Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan kepada Anda.

.