Belajar Python? Inilah Cara Menyalin Fail

Belajar Python? Inilah Cara Menyalin Fail

Adakah anda ingin meningkatkan kemahiran Python anda? Kemudian anda boleh mencuba menjalankan beberapa tugas di komputer anda dengan Python. Menyalin dan menampal fail dari satu direktori ke direktori lain dengan Python adalah cara yang menyeronokkan untuk melakukan ini.





Selain menyenangkan, ia membolehkan anda membaca dan menulis fail dengan cepat tanpa terganggu dari kod anda. Sekiranya anda baru menggunakan Python, itu adalah kemahiran yang mungkin masih perlu anda gunakan dengan cara lain. Oleh itu, mari kita ketahui cara menyalin fail dengan Python melalui catatan ini.





Keperluan untuk Menyalin Fail Dengan Python

Terdapat banyak cara untuk menyalin dan menampal fail dengan Python. Jadi, syarat untuk melakukannya berbeza-beza dan bergantung pada kaedah yang anda putuskan untuk digunakan.





Walaupun anda mungkin tidak memerlukan modul tambahan untuk menyalin fail dengan Python, anda masih boleh menggunakan perpustakaan terbina dalam jika anda mahu.

Contohnya, jika anda ingin menggunakan awak kaedah, anda perlu mengimportnya ke kod anda. Namun, salah satu cara yang popular untuk menyalin fail dengan Python adalah menggunakan selendang perpustakaan.



Mari lihat bagaimana kita boleh menggunakan pelbagai kaedah ini untuk menyalin fail dengan Python.

Cara Menyalin Fail Menggunakan Pustaka Shutil Built-in Python

The selendang modul adalah perpustakaan Python terbina dalam dan kuat untuk membaca dan menulis fail dengan cepat di Python.





Untuk menggunakannya, anda hanya perlu menyediakan jalan penuh fail sumber dan destinasi.

lumpuhkan akses rangkaian ke pendaftaran windows

Pada asasnya, selendang mengambil format ini:





shutil.copy([source directory path], [destination directory path], follow_symlinks=True)

Contohnya, kod di bawah menggunakan shutil.copy () untuk menyalin fail bernama salin.txt dari folder yang dipanggil my_folder menjadi yang lain bernama destinasi . Ia kemudian menamakan semula fail tujuan sebagai newFile.txt :

import shutil
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 bahawa anda boleh menulis kod anda di mana-mana penyunting kod pilihan anda. Anda kemudian boleh menjalankannya menggunakan baris perintah.

Namun, anda juga boleh menggunakan Python Integrated Development Environment (IDLE) lalai jika anda tidak biasa menjalankan Python melalui baris perintah.

Berkaitan: Perintah Prompt Perintah (CMD) yang Mesti Anda Ketahui

The shutil.copy kaedah tidak menyalin metadata fail sumber. Pada dasarnya, mesin anda melihat fail tujuan sebagai yang baru dan memberikannya metadata baru.

Namun, untuk menyalin metadata bersama dengan fail asalnya, gunakan shutil.copy2 kaedah:

import shutil
shutil.copy2(sourceFile, destinationFile, follow_symlinks=True)

Kaedah di atas mengekalkan metadata asal fail lama dalam fail tujuan. Sebagai contoh, fail tujuan mengekalkan tarikh anda membuat fail sumber, ukurannya, dan atribut lain.

The ikuti_symlink argumen adalah deklarasi pautan simbolik yang memungkinkan selendang ikuti jalan mutlak. Oleh itu, anda perlu memasukkannya jika fail sumber dan tujuan berada di direktori yang berbeza.

Tetapi jika kedua-dua fail tersebut ada di direktori kerja anda sekarang, anda tidak perlu memasukkan a ikuti_symlink . Sekiranya anda melakukannya, Python menimbulkan pengecualian sintaks.

mengapa media sosial tidak baik untuk masyarakat

Oleh itu, jika anda menampal fail sumber ke dalam direktori kerja semasa anda, kod anda akan kelihatan seperti ini:

import shutil
shutil.copy2(sourceFile, destinationFile)

Selain menggunakan kaedah penutup di atas, anda juga boleh menggunakan shutil.copyfile atau shutil.copyfileobj .

Menggunakan shutil.copyfileobj sedikit berbeza kerana memerlukan built-in buka fungsi. Kemudian, anda perlu membaca dan menulis binari dengan memasukkan 'rb' dan 'wb' hujah.

Mari lihat bagaimana shutil.copyfileobj kaedah berfungsi menggunakan direktori yang sama yang kami gunakan sebelumnya:

import shutil
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)

Perhatikan bahawa shutil.copyfileobj () tidak memerlukan ikuti_symlink hujah.

Walau bagaimanapun, shutil.copyfile () berfungsi dengan cara yang sama .salinan dan .copy2 adakah. Mereka hanya berbeza dalam fungsi dalaman mereka.

Untuk menggunakan shutil.copyfile () kaedah:

import shutil
sourceFilePath = 'C:/Users/some_directories/my_folder/copy.txt'
destinationFilePath = 'C:/Users/some_directories/destination/newFile.txt'
shutil.copyfile(sourceFilePath, destinationFilePath)

Cara Menyalin Fail Dengan Modul os

The awak modul menggunakan dua kaedah terbina dalam untuk menyalin fail; sistem. ( dan os.popen () kaedah.

The sistem. ( kaedah membolehkan anda meniru persekitaran baris perintah.

Walau bagaimanapun, kekurangan kaedah os adalah bahawa mereka hanya menyalin fail dalam direktori kerja semasa anda.

Untuk menggunakan sistem. ( kaedah pada Windows:

import os
os.system('copy source.txt destination.txt)

Anda juga boleh menggunakan bawaan xcopy Perintah terminal Windows:

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

Untuk menggunakan sistem os. kaedah di Linux, ganti salinan dengan cp :

import os
os.system('cp source.txt destination.txt)

Cara Menyalin Fail Menggunakan Kaedah os.popen

Untuk menggunakan kaedah ini, ganti sistem. ( dengan os.popen () .

Pada Windows, gunakan:

import os
os.popen('copy source.txt destination.txt)

Seperti yang kami lakukan dengan sistem. ( , ganti salinan dengan cp untuk menggunakan kaedah ini di Linux:

import os
os.popen('cp source.txt destination.txt)

Cara Menyalin Fail Dengan Modul subproses Python

Sebagai tambahan kepada kaedah di atas, anda juga boleh menggunakan subproses () perpustakaan untuk menyalin fail di Python:

import subprocess as sp
sp.call('copy sourceFile destinationFile', shell=True)

Walau bagaimanapun, di Linux, gunakan:

import subprocess as sp
sp.call('cp sourceFile destinationFile', shell=True)

The subproses perpustakaan juga menggunakan subprocess.check_out () kaedah. Ia berfungsi dengan cara yang sama subproses. panggilan () melakukan:

import subprocess as sp
sp.check_out('copy sourceFile destinationFile', shell=True)

Di Linux, ganti salinan dengan cp :

import subprocess as sp
sp.check_out('cp sourceFile destinationFIle', shell=True)

Walau bagaimanapun, seperti kaedah os, kaedah subproses hanya berfungsi dengan fail dalam direktori kerja semasa anda.

Catatan: Anda juga dapat menyalin fail ke dalam folder jika ada di direktori kerja yang sama dengan file sumber. Yang perlu anda lakukan hanyalah mengganti nama fail tujuan dengan nama folder tujuan. Namun, pastikan folder tujuan dan fail sumber ada di direktori kerja semasa anda.

Cara Menyalin Fail di Python Tanpa Menggunakan Perpustakaan

Anda juga boleh menyalin fail di Python tanpa bergantung pada perpustakaan mana pun. Seperti kaedah shutil, anda hanya memerlukan jalan penuh dari direktori sumber dan destinasi.

cara menggunakan kotak maya pada windows 10

Inilah cara untuk mencapainya:

sourcePath = 'C:/Users/source_directories/my_folder/copy.txt'
destinationPath = 'C:/Users/some_directories/destination_directories/newFile.txt'
with open(sourcePath, 'rb') as read:
with open(destinationPath, 'wb') as myfile:
myfile.write(read.read())

Untuk menjadikan kod itu dapat digunakan semula, anda boleh mengubahnya menjadi fungsi:

def copyFile(source=None, destination=None):
if not (source and destination)==None:
with open(source, 'rb') as read:
with open(destination, 'wb') as myfile:
myfile.write(read.read())
else:
print('Please enter the source and destination paths')
copyFile(sourcePath, destinationPath)

Itu sahaja. Anda baru sahaja membuat penyalin fail yang boleh digunakan semula dengan Python tanpa menggunakan perpustakaan.

Terus Mengautomasikan Tugas Dengan Python

Selain membantu anda tetap fokus pada kod anda semasa membuat projek, menyalin fail dengan Python membolehkan anda memahami pengurusan fail dengan Python dengan lebih baik. Walau bagaimanapun, bermain-main dengan tugas Python adalah cara untuk meningkatkan kemahiran Python anda, terutamanya jika anda seorang pemula.

Sebagai contoh, anda boleh mengubah tarikh dan waktu pada PC anda dengan modul os. Anda juga boleh menulis perintah bash tersuai dengan Python jika anda mahu.

Berkongsi Berkongsi Tweet E-mel Cara Membuat Program Perintah Anda Sendiri di Python Dengan Klik

Ingin membuat program baris perintah Python anda sendiri tetapi merasa terlalu sukar? Gunakan Klik, alat Python yang berguna untuk menyelaraskan kod anda.

Baca Seterusnya
Topik-topik yang berkaitan
  • Pengaturcaraan
  • Python
Mengenai Pengarang Idisou Omisola(94 Artikel Diterbitkan)

Idowu meminati apa sahaja teknologi pintar dan produktiviti. Pada masa lapang, dia bermain-main dengan pengekodan dan beralih ke papan catur ketika dia bosan, tetapi dia juga suka melepaskan diri dari rutin sekali-sekala. Kesungguhannya untuk menunjukkan kepada orang-orang tentang teknologi moden mendorongnya untuk menulis lebih banyak lagi.

Lagi Dari Idowu Omisola

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan