Python kopyalama dosyası

Birkaç programda bir dosya kopyalamanƒ±z gerekebilir. Programƒ±nƒ±z için √∂nceden tanƒ±mlanmƒ±≈ü bir metin kumesiyle ba≈ülayan bir gunluk kaydƒ± i≈ülevi olu≈üturmak istediƒüinizi hayal edin. Olu≈üturmak istediƒüiniz her gunluk için mevcut bir bo≈ü gunluk dosyasƒ±nƒ±n bir kopyasƒ±nƒ± olu≈üturabilirsiniz.

Python Shutil kitaplƒ±ƒüƒ±, dosyalarƒ± kopyalamak için bir dizi i≈ülevle birlikte gelir. Bu kƒ±lavuzda, Python programlama dilini kullanarak bir dosyayƒ± kopyalamak için shutil.copy() ve shutil.copy2() y√∂ntemlerinin nasƒ±l kullanƒ±lacaƒüƒ± hakkƒ±nda konu≈üuyoruz. Haydi ba≈ülayalƒ±m.

Python Copy File

Dosyalarƒ± ve dizinleri deƒüi≈ütirmenize izin veren Python Shutil kitaplƒ±ƒüƒ±, dosyalarƒ± kopyalamak için y√∂ntemler içerir. copy() ve copy2() y√∂ntemleri, mevcut bir dosyayla ili≈ükili izinleri kopyalamanƒ±za izin verdikleri için yaygƒ±n olarak kullanƒ±lƒ±r.

The copy() ve copy2() arasƒ±ndaki fark, birincisinin dosyalarla ili≈ükili meta verileri (dosya hakkƒ±nda bilgi parçalarƒ±, dosyayƒ± kimin olu≈üturduƒüu gibi) kopyalamamasƒ±dƒ±r. ikincisi bu bilgiyi kopyalarken.

Bu iki yöntemin her birinin nasıl kullanılacağını tartışalım.

Python Shutil.copy()

Bir okuldaki her √∂ƒürenci için karne olu≈üturan bir program olu≈üturalƒ±m. Ba≈ülamak için, sƒ±nƒ±fƒ±mƒ±zdaki her √∂ƒürenci için dosyalar olu≈üturmak istiyoruz. Dosyalar ≈üu ≈üekilde ba≈ülamalƒ±dƒ±r:

Bu bilgi zaten template.txt adlƒ± bir dosyada bulunuyor. Okulumuzdaki her √∂ƒürenci için bir dosya olu≈üturmak için bu ≈üablonu kopyalamak istiyoruz. Ba≈ülamak için, dosyalarƒ±mƒ±zƒ± kopyalamak için kullanacaƒüƒ±mƒ±z Shutil kitaplƒ±ƒüƒ±nƒ± içe aktaralƒ±m ve ardƒ±ndan bir √∂ƒürenci listesi tanƒ±mlayalƒ±m:

Bu listeyi tekrarlayacağız ve boş bir transkript oluşturacağız. her öğrenci:

Katƒ±lƒ±mcƒ±larƒ±n %81’i, bir eƒüitim kampƒ±na katƒ±ldƒ±ktan sonra teknik i≈ü olanaklarƒ± konusunda kendilerine daha fazla guvendiklerini belirtti. Bugun bir eƒüitim kampƒ± ile e≈üle≈üin.

Ortalama bir eƒüitim kampƒ± mezunu, bir eƒüitim kampƒ±na ba≈ülamaktan ilk i≈üini bulmaya kadar, kariyer geçi≈üinde altƒ± aydan az zaman harcadƒ±.

Bu d√∂ngu her √∂ƒürenciden geçer. listemizde. Template.txt dosyasƒ±nƒ± kopyalƒ±yoruz ve o dosyayƒ± her √∂ƒürenci için /home/james/students/data/ dizinine yapƒ±≈ütƒ±rƒ±yoruz. Her √∂ƒürenci için dosyanƒ±n adƒ±:

[Öğrenci adı] değeri bir öğrencinin adını temsil eder.

Programƒ±mƒ±zƒ± çalƒ±≈ütƒ±ralƒ±m ve neler olduƒüunu g√∂relim:

Kodumuz, her √∂ƒürencinin karnesinin olu≈üturulduƒüunu belirten uç mesaj g√∂runtuler.

/home/james/students/data/ klas√∂rune bakarsak, uç dosyayƒ± g√∂rebilir:

Her dosya, √∂nceki ≈üablonumuzun metnini içerir.

Python Shutil.copy2() Yöntemi

shutil.copy2() y√∂ntemi, bir dosyayƒ± i≈ületim sisteminizde bir yerden ba≈üka bir yere kopyalar. Bu y√∂ntem, shutil.copy()’den farklƒ± olarak, bir dosyayla ili≈ükili meta verileri de kopyalar. shutil.copy2(), shutil.copy() y√∂ntemiyle aynƒ± s√∂zdizimini kullanƒ±r.

Bir ilerleme sertifikasƒ± olu≈üturmak istediƒüimizi varsayalƒ±m. oyun oynayan biri için Bu sertifika a≈üaƒüƒ±daki metinle ba≈ülamalƒ±dƒ±r:

Bu metin zaten default_scorecard.txt dosyasında bulunuyor. Shutil kitaplığındaki copy2() yöntemini kullanarak default_scorecard.txt dosyasını kopyalayabiliriz:

Shutil kitaplƒ±ƒüƒ±nƒ± içe aktarƒ±yoruz ve ardƒ±ndan default_scorecard.txt dosyasƒ±nƒ±n bir kopyasƒ±nƒ± olu≈üturmak için shutil.copy2() y√∂ntemini kullanƒ±yoruz . Daha sonra konsola, orijinal dosyanƒ±n son_scores.txt dosyasƒ±na kopyalandƒ±ƒüƒ±nƒ± bildiren bir mesaj yazdƒ±rƒ±rƒ±z.

Diğer Yöntemler

Ayrıca kopyalama dosyasını da kullanabilirsiniz( Shutil kitaplığındaki ) ve copyfileobj() yöntemleri.

Bu yöntemlerin her ikisi de daha önce tartıştığımız iki yöntemle aynı sözdizimini kullanır:

copyfile() y√∂ntemi, bir dosyayƒ± bir konumdan diƒüerine kopyalamanƒ±za olanak tanƒ±r. Python’a yeni ve eski dosya arasƒ±nda bir sembolik baƒülantƒ± olu≈üturmasƒ±nƒ± da s√∂yleyebilirsiniz. copyfileobj() y√∂ntemi, bir dosyayƒ± kopyalamanƒ±za ve verilerin parçalar halinde nasƒ±l okunacaƒüƒ±nƒ± belirlemenize olanak tanƒ±r.

Python Shutil belgeleri.

Sonuç

Python shutil.copy() ve shutil.copy2()

code> y√∂ntemleri, bir dosyayƒ± ba≈üka bir konuma kopyalamanƒ±za izin verir. Bu y√∂ntemler, mevcut bir dosyaya eklenen izinleri kopyalar. copyfile() ve copyfileobj() y√∂ntemlerini de kullanabilirsiniz. bir dosyayƒ± kopyalamak için Shutil kitaplƒ±ƒüƒ±nda.

Python’da kodlama hakkƒ±nda daha fazla bilgi edinmek ister misiniz? Nasƒ±l yapƒ±lƒ±r? Python √∂ƒürenin kƒ±lavuzu. Bu kƒ±lavuz, Python kodlamayƒ± √∂ƒürenmenize yardƒ±mcƒ± olacak bir dizi ipucu ile birlikte gelir. Ayrƒ±ca √∂ƒüreniminize rehberlik edecek √∂ƒürenme kaynaklarƒ± da bulacaksƒ±nƒ±z.