पायथन सीखना? यहाँ एक फ़ाइल की प्रतिलिपि बनाने का तरीका बताया गया है

पायथन सीखना? यहाँ एक फ़ाइल की प्रतिलिपि बनाने का तरीका बताया गया है

क्या आप अपने पायथन कौशल में सुधार करना चाहते हैं? फिर आप अपने कंप्यूटर पर Python के साथ कुछ कार्य करने का प्रयास कर सकते हैं। पायथन के साथ फाइलों को एक निर्देशिका से दूसरी निर्देशिका में कॉपी और पेस्ट करना ऐसा करने का एक मजेदार तरीका है।





मज़ेदार होने के अलावा, यह आपको आपके कोड से विचलित हुए बिना फ़ाइलों को तेज़ी से पढ़ने और लिखने देता है। यदि आप पायथन के लिए नए हैं, तो यह एक ऐसा कौशल है जिसे आपको अभी भी एक या दूसरे तरीके से लेने की आवश्यकता हो सकती है। तो, आइए जानें कि इस पोस्ट के माध्यम से पायथन के साथ फाइलों को कैसे कॉपी करें।





पायथन के साथ फाइल कॉपी करने के लिए आवश्यकताएँ

पायथन के साथ फाइलों को कॉपी और पेस्ट करने के कई तरीके हैं। इसलिए, इसे करने की आवश्यकता अलग-अलग होती है और आपके द्वारा उपयोग की जाने वाली विधि पर निर्भर करती है।





हालाँकि आपको Python के साथ फ़ाइलों को कॉपी करने के लिए अतिरिक्त मॉड्यूल की आवश्यकता नहीं हो सकती है, फिर भी आप चाहें तो बिल्ट-इन लाइब्रेरी का उपयोग कर सकते हैं।

उदाहरण के लिए, यदि आप का उपयोग करना चाहते हैं आप विधि, आपको इसे अपने कोड में आयात करने की आवश्यकता है। हालाँकि, पायथन के साथ फ़ाइलों की प्रतिलिपि बनाने के लोकप्रिय तरीकों में से एक का उपयोग कर रहा है बंद पुस्तकालय।



आइए देखें कि पायथन के साथ फाइलों को कॉपी करने के लिए हम इन विभिन्न तरीकों का उपयोग कैसे कर सकते हैं।

पायथन की अंतर्निहित शटल लाइब्रेरी का उपयोग करके फ़ाइलों की प्रतिलिपि कैसे करें

NS बंद मॉड्यूल एक अंतर्निहित और शक्तिशाली पायथन पुस्तकालय है जो पायथन में फाइलों को जल्दी से पढ़ने और लिखने के लिए है।





इसका उपयोग करने के लिए, आपको केवल स्रोत और गंतव्य फ़ाइलों का पूरा पथ प्रदान करने की आवश्यकता है।

आईफोन 12 प्रो या प्रो मैक्स

संक्षेप में, बंद यह प्रारूप लेता है:





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

उदाहरण के लिए, नीचे दिया गया कोड उपयोग करता है शटिल.कॉपी () नाम की फाइल कॉपी करने के लिए कॉपी.txt नामक फोल्डर से मेरे फ़ोल्डर एक और नाम में गंतव्य . यह तब गंतव्य फ़ाइल का नाम बदल देता है 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)

ध्यान दें कि आप अपना कोड अपनी पसंद के किसी भी कोड संपादक में लिख सकते हैं। फिर आप इसे कमांड लाइन का उपयोग करके चला सकते हैं।

हालाँकि, यदि आप कमांड लाइन के माध्यम से पायथन चलाने से परिचित नहीं हैं, तो आप डिफ़ॉल्ट पायथन इंटीग्रेटेड डेवलपमेंट एनवायरनमेंट (IDLE) का भी उपयोग कर सकते हैं।

सम्बंधित: कमांड प्रॉम्प्ट (सीएमडी) कमांड आपको अवश्य पता होना चाहिए

NS शटिल.प्रतिलिपि विधि स्रोत फ़ाइल के मेटाडेटा की प्रतिलिपि नहीं बनाती है। संक्षेप में, आपकी मशीन गंतव्य फ़ाइल को पूरी तरह से एक नई फ़ाइल के रूप में देखती है और उसे नया मेटाडेटा देती है।

हालांकि, मूल फ़ाइल के साथ मेटाडेटा की प्रतिलिपि बनाने के लिए, का उपयोग करें शटिल.कॉपी2 तरीका:

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

उपरोक्त विधि गंतव्य फ़ाइल में पुरानी फ़ाइल के मूल मेटाडेटा को सुरक्षित रखती है। उदाहरण के लिए, गंतव्य फ़ाइल आपके द्वारा स्रोत फ़ाइल बनाने की तिथि, उसके आकार और अन्य विशेषताओं को बरकरार रखती है।

NS follow_symlinks तर्क एक प्रतीकात्मक लिंक घोषणा है जो देता है बंद एक निरपेक्ष पथ का पालन करें। इसलिए आपको इसे शामिल करने की आवश्यकता है यदि स्रोत और गंतव्य फ़ाइलें अलग-अलग निर्देशिकाओं में हैं।

लेकिन यदि दोनों फ़ाइलें आपकी वर्तमान कार्यशील निर्देशिका में हैं, तो आपको a . को शामिल करने की आवश्यकता नहीं है follow_symlinks . यदि आप करते हैं, तो पायथन एक सिंटैक्स अपवाद उठाता है।

आपके पास एक मदरबोर्ड है जिसमें 4 बिल्ट इन sata . है

इसलिए, यदि आप स्रोत फ़ाइल को अपनी वर्तमान कार्यशील निर्देशिका में चिपका रहे हैं, तो आपका कोड इस तरह दिखना चाहिए:

import shutil
shutil.copy2(sourceFile, destinationFile)

ऊपर दिए गए शटिल विधियों का उपयोग करने के अलावा, आप इसका भी उपयोग कर सकते हैं शटल.कॉपीफ़ाइल या sutil.copyfileobj .

का उपयोग करते हुए sutil.copyfileobj थोड़ा अलग है क्योंकि इसमें बिल्ट-इन की आवश्यकता होती है खोलना समारोह। फिर, आपको इसमें शामिल करके बाइनरी पढ़ने और लिखने की आवश्यकता है 'आरबी' तथा 'डब्ल्यूबी' तर्क।

आइए देखें कि कैसे sutil.copyfileobj विधि उन्हीं निर्देशिकाओं का उपयोग करके काम करती है जिनका हमने पहले उपयोग किया था:

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)

ध्यान दें कि sutil.copyfileobj () की आवश्यकता नहीं है follow_symlinks तर्क।

तथापि, शटल.कॉपीफाइल () ठीक उसी तरह काम करता है .प्रतिलिपि तथा .कॉपी2 करता है। वे केवल अपने आंतरिक कार्यों में मामूली रूप से भिन्न होते हैं।

का उपयोग करने के लिए शटल.कॉपीफाइल () तरीका:

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

ओएस मॉड्यूल के साथ फाइलों की प्रतिलिपि कैसे करें

NS आप मॉड्यूल फ़ाइलों की प्रतिलिपि बनाने के लिए दो अंतर्निहित विधियों का उपयोग करता है; ओएस सिस्टम () तथा ओएस पॉपन () तरीके।

NS ओएस सिस्टम () विधि आपको कमांड लाइन वातावरण की नकल करने की अनुमति देती है।

हालाँकि, os विधियों की एक कमी यह है कि वे केवल आपकी वर्तमान कार्यशील निर्देशिका में फ़ाइलों की प्रतिलिपि बनाते हैं।

का उपयोग करने के लिए ओएस सिस्टम () विंडोज़ पर विधि:

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

आप बिल्ट-इन का भी उपयोग कर सकते हैं एक्सकॉपी विंडोज टर्मिनल कमांड:

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

का उपयोग करने के लिए ओएस सिस्टम लिनक्स पर विधि, बदलें प्रतिलिपि साथ सीपी :

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

os.popen विधि का उपयोग करके फ़ाइलों की प्रतिलिपि कैसे करें

इस विधि का उपयोग करने के लिए, प्रतिस्थापित करें ओएस सिस्टम () साथ ओएस पॉपन () .

विंडोज़ पर, उपयोग करें:

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

जैसा हमने किया ओएस सिस्टम () , बदलने के प्रतिलिपि साथ सीपी Linux पर इस विधि का उपयोग करने के लिए:

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

पायथन के सबप्रोसेस मॉड्यूल के साथ फाइलों की प्रतिलिपि कैसे करें

उपरोक्त विधियों के अतिरिक्त, आप इसका उपयोग भी कर सकते हैं उपप्रक्रिया () पायथन में फाइलों की प्रतिलिपि बनाने के लिए पुस्तकालय:

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

हालांकि, लिनक्स पर, उपयोग करें:

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

NS उपप्रक्रिया पुस्तकालय भी उपयोग करता है सबप्रोसेस.चेक_आउट () तरीका। यह उसी तरह काम करता है सबप्रोसेस.कॉल () करता है:

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

लिनक्स पर, बदलें प्रतिलिपि साथ सीपी :

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

हालाँकि, os विधियों की तरह, सबप्रोसेस विधियाँ केवल आपकी वर्तमान कार्यशील निर्देशिका में फ़ाइलों के साथ काम करती हैं।

ध्यान दें: आप फ़ाइलों को एक फ़ोल्डर में कॉपी भी कर सकते हैं यदि यह स्रोत फ़ाइल के समान कार्यशील निर्देशिका में है। आपको बस गंतव्य फ़ाइल नाम को गंतव्य फ़ोल्डर के नाम से बदलना है। हालाँकि, सुनिश्चित करें कि गंतव्य फ़ोल्डर और स्रोत फ़ाइल आपकी वर्तमान कार्यशील निर्देशिका में हैं।

पुस्तकालयों का उपयोग किए बिना पायथन में फ़ाइलों की प्रतिलिपि कैसे करें

आप किसी लाइब्रेरी पर निर्भर हुए बिना भी पाइथन में फाइल कॉपी कर सकते हैं। शटिल विधि की तरह, आपको केवल स्रोत और गंतव्य निर्देशिकाओं के पूर्ण पथ की आवश्यकता है।

मेरा फ़ोन क्यों काम नहीं कर रहा है

इसे हासिल करने का तरीका यहां बताया गया है:

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

कोड को पुन: प्रयोज्य बनाने के लिए, आप इसे एक फ़ंक्शन में संशोधित कर सकते हैं:

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)

बस, इतना ही। आपने किसी पुस्तकालय का उपयोग किए बिना पाइथन के साथ एक पुन: प्रयोज्य फ़ाइल कॉपियर बनाया है।

पायथन के साथ कार्यों को स्वचालित रखें

प्रोजेक्ट बनाते समय अपने कोड पर ध्यान केंद्रित करने में आपकी मदद करने के अलावा, Python के साथ फ़ाइलों की प्रतिलिपि बनाने से आप Python के साथ फ़ाइल प्रबंधन को बेहतर ढंग से समझ सकते हैं। हालाँकि, पायथन कार्यों के साथ खेलना आपके पायथन कौशल को बेहतर बनाने का एक तरीका है, खासकर यदि आप एक नौसिखिया हैं।

उदाहरण के लिए, आप अपने पीसी पर ओएस मॉड्यूल के साथ दिनांक और समय बदल सकते हैं। आप चाहें तो पायथन के साथ कस्टम बैश कमांड भी लिख सकते हैं।

साझा करना साझा करना कलरव ईमेल क्लिक के साथ पायथन में अपना खुद का कमांड लाइन प्रोग्राम कैसे बनाएं

अपना खुद का पायथन कमांड लाइन प्रोग्राम बनाना चाहते हैं लेकिन यह बहुत कठिन है? अपने कोड को सुव्यवस्थित करने के लिए एक उपयोगी पायथन टूल क्लिक का उपयोग करें।

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • अजगर
लेखक के बारे में इडिसौ ओमिसोला(94 लेख प्रकाशित)

Idowu कुछ भी स्मार्ट तकनीक और उत्पादकता के बारे में भावुक है। अपने खाली समय में, वह कोडिंग के साथ खेलता है और जब वह ऊब जाता है तो शतरंज की बिसात पर चला जाता है, लेकिन उसे कभी-कभी दिनचर्या से अलग होना भी पसंद होता है। लोगों को आधुनिक तकनीक के बारे में बताने का उनका जुनून उन्हें और अधिक लिखने के लिए प्रेरित करता है।

Idowu Omisola . की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें