Python'u Öğrenmek? İşte Bir Dosya Nasıl Kopyalanır

Python'u Öğrenmek? İşte Bir Dosya Nasıl Kopyalanır

Python becerinizi geliştirmek ister misiniz? Ardından Python ile bilgisayarınızda bazı görevleri gerçekleştirmeyi deneyebilirsiniz. Python ile dosyaları bir dizinden diğerine kopyalayıp yapıştırmak bunu yapmanın eğlenceli bir yoludur.





Eğlenceli olmasının yanı sıra, kodunuzdan dikkatiniz dağılmadan dosyaları hızlı bir şekilde okumanıza ve yazmanıza olanak tanır. Python'da yeniyseniz, yine de bir şekilde almanız gerekebilecek bir beceridir. Öyleyse, bu gönderi aracılığıyla Python ile dosyaları nasıl kopyalayacağımızı öğrenelim.





Python ile Dosya Kopyalama Gereksinimleri

Python ile dosyaları kopyalayıp yapıştırmanın birçok yolu vardır. Bu nedenle, bunu yapma gereksinimi değişir ve kullanmaya karar verdiğiniz yönteme bağlıdır.





Python ile dosya kopyalamak için fazladan modüllere ihtiyacınız olmasa da, isterseniz yerleşik kitaplıkları kullanabilirsiniz.

Örneğin, kullanmak istiyorsanız sen yöntemi, kodunuza aktarmanız gerekir. Ancak, Python ile dosya kopyalamanın popüler yollarından biri, şutil kütüphane.



Python ile dosyaları kopyalamak için bu çeşitli yöntemleri nasıl kullanabileceğimizi görelim.

Python'un Yerleşik Shutil Kitaplığını Kullanarak Dosyaları Kopyalama

NS şutil modülü, Python'da dosyaları hızlı bir şekilde okumak ve yazmak için yerleşik ve güçlü bir Python kitaplığıdır.





Bunu kullanmak için, yalnızca kaynak ve hedef dosyaların tam yolunu sağlamanız gerekir.

macbook pro pili değiştirmenin maliyeti nedir

Özünde, şutil bu formatı alır:





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

Örneğin, aşağıdaki kod kullanır shutil.kopya () adlı bir dosyayı kopyalamak için kopya.txt adlı bir klasörden benim_klasörüm adlı başka birine hedef . Daha sonra hedef dosyayı şu şekilde yeniden adlandırır: yeniDosya.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)

Kodunuzu istediğiniz herhangi bir kod düzenleyicide yazabileceğinizi unutmayın. Daha sonra komut satırını kullanarak çalıştırabilirsiniz.

Ancak, Python'u komut satırı üzerinden çalıştırmaya aşina değilseniz, varsayılan Python Entegre Geliştirme Ortamı'nı (IDLE) da kullanabilirsiniz.

İlgili: Bilmeniz Gereken Komut İstemi (CMD) Komutları

NS shutil.kopya yöntem, kaynak dosyanın meta verilerini kopyalamaz. Özünde, makineniz hedef dosyayı tamamen yeni bir dosya olarak görür ve ona yeni meta veriler verir.

Ancak meta verileri orijinal dosyayla birlikte kopyalamak için shutil.kopya2 yöntem:

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

Yukarıdaki yöntem, hedef dosyadaki eski dosyanın orijinal meta verilerini korur. Örneğin hedef dosya, kaynak dosyayı oluşturduğunuz tarihi, boyutunu ve diğer özniteliklerini korur.

NS Follow_symlinks argüman, izin veren sembolik bir bağlantı bildirimidir. şutil mutlak bir yol izleyin. Bu nedenle, kaynak ve hedef dosyalar farklı dizinlerdeyse onu eklemeniz gerekir.

Ancak her iki dosya da geçerli çalışma dizininizdeyse, bir dosya eklemeniz gerekmez. Follow_symlinks . Bunu yaparsanız, Python bir sözdizimi istisnası oluşturur.

xbox one denetleyicisi nasıl senkronize edilir

Bu nedenle, kaynak dosyayı mevcut çalışma dizininize yapıştırıyorsanız, kodunuz şöyle görünmelidir:

import shutil
shutil.copy2(sourceFile, destinationFile)

Yukarıdaki shutil yöntemlerini kullanmanın yanı sıra şunları da kullanabilirsiniz. shutil.kopya dosyası veya Shutil.copyfileobj .

kullanma Shutil.copyfileobj yerleşik gerektirdiğinden biraz farklıdır açık işlev. Ardından, dahil ederek ikili okuma ve yazmanız gerekir. 'rb' ve 'wb' argümanlar.

bakalım nasıl Shutil.copyfileobj yöntem, daha önce kullandığımız dizinleri kullanarak çalışır:

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)

Bunu not et Shutil.copyfileobj () gerektirmez Follow_symlinks argüman.

Yine de, Shutil.kopya dosyası () oldukça aynı şekilde çalışır .kopya ve .kopya2 yapmak. Sadece iç işlevlerinde önemsiz derecede farklılık gösterirler.

kullanmak için Shutil.kopya dosyası () yöntem:

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

OS Modülü ile Dosyalar Nasıl Kopyalanır

NS sen modül, dosyaları kopyalamak için iki yerleşik yöntem kullanır; işletim sistemi() ve os.popen () yöntemler.

NS işletim sistemi() method komut satırı ortamını taklit etmenizi sağlar.

Ancak, işletim sistemi yöntemlerinin bir eksikliği, yalnızca mevcut çalışma dizininizdeki dosyaları kopyalamalarıdır.

kullanmak için işletim sistemi() Windows'ta yöntem:

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

Ayrıca yerleşik kullanabilirsiniz kopya Windows terminal komutu:

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

kullanmak için işletim sistemi Linux'ta yöntem, değiştirin kopyalamak ile birlikte cp :

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

os.popen Yöntemi Kullanılarak Dosyalar Nasıl Kopyalanır

Bu yöntemi kullanmak için değiştirin işletim sistemi() ile birlikte os.popen () .

Windows'ta şunu kullanın:

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

ile yaptığımız gibi işletim sistemi() , yer değiştirmek kopyalamak ile birlikte cp bu yöntemi Linux'ta kullanmak için:

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

Python'un alt işlem Modülü ile Dosyalar Nasıl Kopyalanır

Yukarıdaki yöntemlere ek olarak, aşağıdakileri de kullanabilirsiniz: alt süreç() Python'da dosyaları kopyalamak için kitaplık:

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

Ancak, Linux'ta şunu kullanın:

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

NS alt süreç kütüphane de kullanır altişlem.check_out() yöntem. Aynı şekilde çalışır altişlem.çağrı () yapmak:

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

Linux'ta, değiştirin kopyalamak ile birlikte cp :

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

Ancak, işletim sistemi yöntemleri gibi, alt işlem yöntemleri de yalnızca geçerli çalışma dizininizdeki dosyalarla çalışır.

Not: Kaynak dosyayla aynı çalışma dizinindeyse, dosyaları bir klasöre de kopyalayabilirsiniz. Tek yapmanız gereken hedef dosya adını hedef klasörün adıyla değiştirmek. Ancak, hedef klasörün ve kaynak dosyanın geçerli çalışma dizininizde olduğundan emin olun.

Kütüphaneleri Kullanmadan Python'da Dosyalar Nasıl Kopyalanır?

Dosyaları herhangi bir kitaplığa bağlı kalmadan Python'da da kopyalayabilirsiniz. Shutil yöntemi gibi, yalnızca kaynak ve hedef dizinlerin tam yollarına ihtiyacınız vardır.

.gz dosyası nasıl açılır

Bunu nasıl başaracağınız aşağıda açıklanmıştır:

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())

Kodu yeniden kullanılabilir hale getirmek için, onu bir işleve dönüştürebilirsiniz:

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)

Bu kadar. Python ile herhangi bir kitaplık kullanmadan yeniden kullanılabilir bir dosya kopyalayıcı yaptınız.

Python ile Görevleri Otomatikleştirmeye Devam Edin

Dosyaları Python ile kopyalamak, proje oluştururken kodunuza odaklanmanıza yardımcı olmanın yanı sıra, Python ile dosya yönetimini daha iyi anlamanızı sağlar. Ancak Python görevleriyle uğraşmak, özellikle de yeni başlıyorsanız Python becerinizi geliştirmenin bir yoludur.

Örneğin, os modülü ile PC'nizdeki tarih ve saati değiştirebilirsiniz. İsterseniz Python ile özel bash komutları bile yazabilirsiniz.

Paylaş Paylaş Cıvıldamak E-posta Python'da Tıklayarak Kendi Komut Satırı Programlarınızı Nasıl Oluşturabilirsiniz?

Kendi Python komut satırı programlarınızı yapmak istiyor ancak bunu çok mu zor buluyorsunuz? Kodunuzu kolaylaştırmak için kullanışlı bir Python aracı olan Click'i kullanın.

Sonrakini Oku
İlgili konular
  • Programlama
  • piton
Yazar hakkında Idisou Omisola(94 Makale Yayımlandı)

Idowu akıllı teknoloji ve üretkenlik konusunda tutkulu. Boş zamanlarında kodlamayla uğraşıyor ve canı sıkılınca satranç tahtasına geçiyor ama arada sırada rutinden kopmayı da seviyor. İnsanlara modern teknolojinin yolunu gösterme tutkusu onu daha fazla yazmaya motive ediyor.

Idowu Omisola'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın