python - पायथन का उपयोग कर फ़ाइल का नाम कैसे बदलें




file-rename (6)

मैं a.txt को b.kml बदलना चाहता b.kml


कार्य को पूरा करने के लिए आप टर्मिनल का आह्वान करने के लिए ओएससिस्टम का उपयोग कर सकते हैं:

os.system('mv oldfile newfile')

पाइथन 3.4 के रूप में कोई इसे हल करने के लिए pathlib मॉड्यूल का उपयोग कर सकता है।

यदि आप पुराने संस्करण पर होते हैं, तो आप here मिले बैकपोर्टेड संस्करण का उपयोग कर सकते here

आइए मान लें कि आप रूट पथ में नहीं हैं (बस इसमें कुछ कठिनाई जोड़ने के लिए) आप नाम बदलना चाहते हैं, और एक पूर्ण पथ प्रदान करना है, हम इसे देख सकते हैं:

some_path = 'a/b/c/the_file.extension'

तो, आप अपना रास्ता ले सकते हैं और इसके बाहर Path वस्तु बना सकते हैं:

from pathlib import Path
p = Path(some_path)

बस इस ऑब्जेक्ट के आस-पास कुछ जानकारी प्रदान करने के लिए हमारे पास अब चीजें निकाली जा सकती हैं। उदाहरण के लिए, यदि किसी भी कारण से हम फ़ाइल नाम को the_file से the_file संशोधित करके फ़ाइल का नाम बदलना चाहते हैं, तो हम फ़ाइल नाम भाग प्राप्त कर सकते हैं:

name_without_extension = p.stem

और अभी भी विस्तार में हाथ पकड़ो:

ext = p.suffix

हम एक सरल स्ट्रिंग मैनिपुलेशन के साथ हमारे संशोधन कर सकते हैं:

new_file_name = "{}_{}".format(name_without_extension, 1)

और अब हम अपना नाम बदलकर हमारे द्वारा बनाई गई पथ वस्तु पर rename विधि को कॉल करके और उचित नामकरण संरचना को पूरा करने के लिए ext को जोड़कर अपना नाम बदल सकते हैं:

p.rename(Path(p.parent, new_file_name + ext))

इसकी सादगी दिखाने के लिए जल्द ही:

from pathlib import Path
p = Path(some_path)
p.rename(Path(p.parent, "{}_{}".format(p.stem, 1) + p.ext))

os.rename प्रयोग करें:

import os

os.rename('a.txt', 'b.kml')


import os

path = 'a\b\c'
# save current working directory
saved_cwd = os.getcwd()
# change your cwd to the directory which contains files
os.chdir(path)
os.rename('a.txt', 'b.klm')
# moving back to the directory you were in 
os.chdir(saved_cwd)

import shutil

shutil.move('a.txt', 'b.kml')

यह फ़ाइल का नाम बदलने या स्थानांतरित करने के लिए काम करेगा।





file-rename