पायथन का उपयोग करके निर्माण तिथि के अनुसार क्रमबद्ध निर्देशिका सूची प्राप्त करना
किसी निर्देशिका को नेविगेट करते समय, क्रमबद्ध इसकी सामग्री की एक सूची प्राप्त करने की आवश्यकता अक्सर उत्पन्न होती है विशिष्ट मानदंडों के अनुसार, जैसे निर्माण तिथि। पायथन में, इस कार्य को आसानी से पूरा किया जा सकता है। नियोजित. निम्नलिखित कोड स्निपेट इस प्रक्रिया को दर्शाता है:
आयात ग्लोब ओएस आयात करें search_dir = "/mydir/" फ़ाइलें = [os.path.join(search_dir, f) os.listdir(search_dir) में f के लिए यदि os.path.isfile(f)] फ़ाइलें.सॉर्ट(कुंजी=लैम्ब्डा x: os.path.getmtime(x))यह कोड स्निपेट os.listdir() का उपयोग करके निर्दिष्ट निर्देशिका के भीतर सभी फ़ाइलों की एक सूची प्राप्त करने से शुरू होता है। इसके बाद, किसी भी गैर-फ़ाइल आइटम (जैसे, निर्देशिका, लिंक) को os.path.isfile() का उपयोग करके फ़िल्टर किया जाता है। सही फ़ाइल पथ सुनिश्चित करने के लिए, प्रत्येक फ़ाइल नाम को खोज निर्देशिका पथ के साथ उपसर्ग किया जाता है।
फ़ाइलों को फिर os.path.getmtime() फ़ंक्शन का उपयोग करके उनके संशोधन समय के अनुसार क्रमबद्ध किया जाता है। यह फ़ंक्शन किसी फ़ाइल के अंतिम संशोधन का समय संख्यात्मक प्रारूप में लौटाता है। इस फ़ंक्शन को सॉर्टेड() फ़ंक्शन के मुख्य तर्क के रूप में पास करके, फ़ाइलों को कालानुक्रमिक क्रम में व्यवस्थित किया जाता है, जिसमें सबसे हाल ही में बनाई गई फ़ाइलें पहले दिखाई देती हैं।
import glob import os search_dir = "/mydir/" files = [os.path.join(search_dir, f) for f in os.listdir(search_dir) if os.path.isfile(f)] files.sort(key=lambda x: os.path.getmtime(x))वैकल्पिक दृष्टिकोण:
एक वैकल्पिक दृष्टिकोण में फ़ाइलों को फ़िल्टर करने और पूर्ण फ़ाइल पथों की सूची प्राप्त करने के लिए ग्लोब मॉड्यूल का उपयोग करना शामिल है:
आयात ग्लोब ओएस आयात करें search_dir = "/mydir/" # यह ग्लोब सभी फ़ाइलों को खोजेगा और किसी भी निर्देशिका को बाहर कर देगा फ़ाइलें = [f for f in glob.glob(f"{search_dir}/**", recursive=True) if os.path.isfile(f)] files.sort(key=lambda x: os.path.getmtime(x))यह कोड अनिवार्य रूप से निर्दिष्ट निर्देशिका और उसकी उपनिर्देशिकाओं की संपूर्ण सामग्री को खोजता है, जिसमें सभी फ़ाइलें शामिल हैं और किसी भी निर्देशिका को छोड़कर। यदि आवश्यक हो तो glob.glob() फ़ंक्शन अधिक लचीले फ़ाइल नाम मिलान की अनुमति देता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3