Python os.rename() का उपयोग करके फ़ाइल और निर्देशिका का नाम बदलें

⚡ स्मार्ट सारांश

Python os.rename() का उपयोग करके फ़ाइलों और निर्देशिकाओं का नाम बदलें। यहाँ आप os.rename(), os.renames(), shutil.move() और pathlib Path.rename() के बारे में जानेंगे, साथ ही स्पष्ट उदाहरणों के साथ निर्देशिका का नाम बदलना और एक साथ कई फ़ाइलों का नाम बदलना सीखेंगे।

  • ओएस.नाम बदलें(): os.rename(src, dst) किसी फ़ाइल या निर्देशिका का नाम बदलता है; स्रोत मौजूद होना चाहिए।
  • ओएस.नाम बदलें(): os.renames() फ़ंक्शन अनुपस्थित गंतव्य फ़ोल्डरों को स्वचालित रूप से बना देता है।
  • 🚚 shutil.move(): shutil.move() फ़ाइलों का नाम बदल सकता है और उन्हें एक फ़ाइल सिस्टम से दूसरे फ़ाइल सिस्टम में स्थानांतरित कर सकता है।
  • 🐍 पथलिब: Path.rename() ऑब्जेक्ट-ओरिएंटेड तरीके से फ़ाइलों का नाम बदलता है (Python 3.4+) है।
  • 🤖 एआई सहायता: कोपायलट जैसे एआई टूल तुरंत रीनेम और बैच-रीनेम कोड जनरेट करते हैं।

Python फ़ाइल का नाम बदलें os.rename()

Python फ़ाइल का नाम बदलें

Python फ़ाइल का नाम बदलें एक विधि है जिसका उपयोग किसी फ़ाइल या निर्देशिका का नाम बदलने के लिए किया जाता है Python प्रोग्रामिंग. Python rename() फ़ाइल विधि को src (स्रोत) और dst (गंतव्य) नामक दो तर्कों को पारित करके घोषित किया जा सकता है।

वाक्य - विन्यास

यह os.rename() विधि का सिंटैक्स है

os.rename(src, dst)

पैरामीटर्स

स्रोत: स्रोत फ़ाइल या निर्देशिका का नाम है। यह पहले से मौजूद होना चाहिए।

डीएसटी: गंतव्य उस फ़ाइल या निर्देशिका का नया नाम है जिसे आप बदलना चाहते हैं।

उदाहरण:

import os  
os.rename('guru99.txt','career.guru99.txt')

आइये उदाहरण को विस्तार से देखें

आप मूल फ़ाइल का नाम बदल सकते हैं, हमने फ़ाइल का नाम " से बदल दिया हैGuru“Career.guru99.txt” को “Career.guru99.txt” में बदलें।

Python फ़ाइल का नाम बदलें

  • “guru99.txt” फ़ाइल का नाम बदलने के लिए, हम OS मॉड्यूल में “rename function” का उपयोग करने जा रहे हैं
  • इसलिए जब कोड निष्पादित होता है, तो आप देख सकते हैं कि पैनल के दाईं ओर एक नई फ़ाइल “career.guru99.txt” बनाई गई है, जिसका नाम हमने अपनी मूल फ़ाइल के लिए बदल दिया है।

यहाँ पूरा कोड है

import os
import shutil
from os import path

def main():
	# make a duplicate of an existing file
    if path.exists("guru99.txt"):
	# get the path to the file in the current directory
        src = path.realpath("guru99.txt");
		
	# rename the original file
        os.rename('guru99.txt','career.guru99.txt') 
		
if __name__ == "__main__":
    main()

किसी डायरेक्टरी का नाम कैसे बदलें Python

os.rename() विधि न केवल फ़ाइलों का नाम बदलती है, बल्कि निर्देशिकाओं का नाम भी बदलती है। स्रोत के रूप में वर्तमान फ़ोल्डर का नाम और गंतव्य के रूप में नया नाम पास करें।

import os
os.rename("old_directory", "new_directory")

यदि स्रोत निर्देशिका मौजूद नहीं है, Python इससे FileNotFoundError उत्पन्न होता है, इसलिए पहले पथ की जांच करना एक अच्छी बात है।

os.renames() का उपयोग करके किसी फ़ाइल का नाम बदलें

os.renames() विधि किसी फ़ाइल का नाम बदलती है और गंतव्य पथ में अनुपस्थित मध्यवर्ती निर्देशिकाओं को स्वचालित रूप से बनाती है। यह स्रोत पथ में मौजूद खाली निर्देशिकाओं को भी हटा देती है।

import os
os.renames("guru99.txt", "archive/2024/career.txt")

यहां आर्काइव और 2024 फोल्डर स्वचालित रूप से बन जाते हैं यदि वे पहले से मौजूद नहीं हैं।

shutil.move() का उपयोग करके किसी फ़ाइल का नाम बदलें

shutil.move() फ़ंक्शन एक फ़ाइल को एक नए स्थान पर ले जाता है, जो प्रभावी रूप से फ़ाइल का नाम बदल देता है जब गंतव्य वही निर्देशिका होती है।

import shutil
shutil.move("guru99.txt", "career.guru99.txt")

os.rename() के विपरीत, shutil.move() किसी फ़ाइल को विभिन्न फ़ाइल सिस्टम या ड्राइव के बीच भी स्थानांतरित कर सकता है।

pathlib मॉड्यूल का उपयोग करके किसी फ़ाइल का नाम बदलें

In Python 3.4 और उसके बाद के संस्करणों में, pathlib मॉड्यूल फ़ाइलों का नाम बदलने के लिए ऑब्जेक्ट-ओरिएंटेड Path.rename() विधि प्रदान करता है।

from pathlib import Path

file = Path("guru99.txt")
file.rename("career.guru99.txt")

rename() विधि एक नया Path ऑब्जेक्ट लौटाती है जो नाम बदले गए फ़ाइल को इंगित करता है।

एक से अधिक फ़ाइलों का नाम कैसे बदलें Python

एक साथ कई फ़ाइलों का नाम बदलने के लिए, os.listdir() फ़ंक्शन का उपयोग करके डायरेक्टरी में मौजूद फ़ाइलों पर लूप चलाएँ और प्रत्येक फ़ाइल के लिए os.rename() फ़ंक्शन को कॉल करें। नीचे दिए गए उदाहरण में प्रत्येक फ़ाइल में एक क्रमांकित उपसर्ग जोड़ा गया है।

import os

folder = "myfiles"
for count, filename in enumerate(os.listdir(folder)):
    new_name = f"file_{count}.txt"
    os.rename(os.path.join(folder, filename), os.path.join(folder, new_name))

os.path.join() का उपयोग करने से कोड किसी भी ऑपरेटिंग सिस्टम पर सही ढंग से काम करता रहता है।

अक्सर पूछे जाने वाले प्रश्न

os को इम्पोर्ट करें और os.rename(src, dst) को कॉल करें, जिसमें वर्तमान फ़ाइल नाम और नया नाम पास करें। स्रोत फ़ाइल पहले से मौजूद होनी चाहिए, या Python FileNotFoundError उत्पन्न करता है।

os.rename() किसी एक फ़ाइल या डायरेक्टरी का नाम बदलता है, जबकि os.renames() स्थानांतरण के बाद किसी भी अनुपस्थित मध्यवर्ती डायरेक्टरी को बनाता है और खाली स्रोत फ़ोल्डरों को हटा देता है।

हाँ। shutil.move(src, dst) फ़ाइल का नाम बदल देता है जब गंतव्य एक ही फ़ोल्डर होता है, और os.rename() के विपरीत, यह फ़ाइलों को विभिन्न फ़ाइल सिस्टमों में भी स्थानांतरित कर सकता है।

os.rename('old_dir', 'new_dir') का उपयोग करें। os.rename() फ़ंक्शन फ़ाइलों और निर्देशिकाओं दोनों के लिए काम करता है, बशर्ते स्रोत निर्देशिका मौजूद हो।

os.listdir(folder) लूप चलाएँ और प्रत्येक फ़ाइल के लिए os.rename() फ़ंक्शन को कॉल करें। पूर्ण पथ बनाने के लिए os.path.join() का उपयोग करें ताकि कोड किसी भी ऑपरेटिंग सिस्टम पर काम करे।

GitHub Copilot जैसे AI सहायक os.rename() और pathlib कॉल को स्वतः पूर्ण करते हैं, और आपके द्वारा वांछित नामकरण पैटर्न का वर्णन करने वाली टिप्पणी से बैच-नामकरण लूप उत्पन्न करते हैं।

जी हां। एआई-संचालित उपकरण बैच-नाम परिवर्तन स्क्रिप्ट लिखने को स्वचालित कर सकते हैं, नंबरिंग या दिनांक उपसर्ग जैसे पैटर्न लागू कर सकते हैं, और गुम या डुप्लिकेट नामों के लिए त्रुटि प्रबंधन जोड़ सकते हैं।

On Windowsयदि गंतव्य फ़ाइल पहले से मौजूद है, तो os.rename() फ़ाइलExistsError उत्पन्न करता है। Unix पर, यह फ़ाइल को चुपचाप ओवरराइट कर देता है। डेटा हानि से बचने के लिए पहले os.path.exists() का उपयोग करके जाँच करें।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: