इसलिए मैं हाल ही में पायथन आरईपीएल का काफी उपयोग कर रहा हूं। मैं इसे विंडोज़ पर उपयोग कर रहा हूं और यह वास्तव में मेरे लिए काफी कष्टप्रद हो रहा था कि मैं टर्मिनल स्क्रीन को साफ़ नहीं कर सका।
थोड़े से काम से मैं इस कोड को हैक करने में सक्षम हो गया जिससे मुझे टर्मिनल को साफ़ करने की अनुमति मिल गई। कुछ छोटे मुद्दे थे जिन्होंने इसे गैर-मामूली बना दिया।
StackOverflow पर मुझे जो भी उदाहरण मिले उनमें से अधिकांश क्लियर या सीएलएस को कॉल करने के लिए os.cmd का उपयोग करते थे। os.system का उपयोग वर्जित है। मुझे यह पता लगाने की ज़रूरत थी कि इसे उपप्रोसेस के रूप में कैसे चलाया जाए। इससे यह थोड़ा और मुश्किल हो गया क्योंकि cls एक आंतरिक कमांड है। इसका मतलब है कि यह cmd निष्पादन योग्य में बनाया गया है। हम सीधे सीएलएस निष्पादित नहीं कर सकते इसलिए हमें इसे सीएमडी के आह्वान के हिस्से के रूप में निष्पादित करने की आवश्यकता है।
कमांड लाइन cmd /c cls है। /सी पैरामीटर कमांड प्रोसेसर को सीएलएस निष्पादित करने के तुरंत बाद बाहर निकलने के लिए कहता है।
import subprocess def clear() -> None: command = ['cmd'] args = ['/c','cls'] cli = command args subprocess.run(cli) return None
इसलिए अब हमारे पास सही कोड है, हम चाहते हैं कि जब भी हम पायथन आरईपीएल क्लियर करें तो यह स्वचालित रूप से हमारे लिए उपलब्ध हो।
यह मेरी समझ है कि इस कोड को छिपाने के कई तरीके हैं ताकि पायथन इसे स्वचालित रूप से उठा सके। यहां बताया गया है कि मैंने यह कैसे किया।
मैंने एक नया यूजर लेवल एनवायरनमेंट वेरिएबल PYTHONSTARTUP बनाया और इसे अपनी %USERPROFILE% निर्देशिका पर इंगित किया। USERPROFILE *nix मशीन पर होम डायरेक्टरी का विंडोज एनालॉग है। मैंने कोड को .pyrc फ़ाइल में सहेजा है जिसे मैंने %PYTHONSTARTUP% निर्देशिका में संग्रहीत किया है।
यह कोई बड़ी या चौंकाने वाली बात नहीं है, लेकिन इसे समझने में मुझे कुछ मिनट लगे इसलिए मैंने सोचा कि अन्य लोग भी इसके बारे में जानना चाहेंगे।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3