] सबप्रोसेस मॉड्यूल इस उद्देश्य के लिए एक शक्तिशाली तंत्र प्रदान करता है, जिससे पायथन कार्यक्रमों को ऑपरेटिंग सिस्टम के साथ बातचीत करने और नियंत्रित तरीके से कमांड को निष्पादित करने की अनुमति मिलती है। अवांछित आउटपुट, जो टर्मिनल या आउटपुट डिस्प्ले को अव्यवस्थित कर सकता है और स्क्रिप्ट के स्वयं के आउटपुट की पठनीयता में हस्तक्षेप कर सकता है। यह विशेष रूप से प्रचलित है जब कमांड का उपयोग करते हैं जो डायग्नोस्टिक संदेश या वर्बोज़ स्थिति अपडेट प्रदान करते हैं।
पायथन 3.3 और बाद में
यह दृष्टिकोण यह सुनिश्चित करता है कि सबप्रोसेस से मानक आउटपुट और मानक त्रुटि दोनों धाराएँ देवनुल डिवाइस को निर्देशित होती हैं, जो किसी भी अवांछित संदेशों को टर्मिनल तक पहुंचने से रोकती है। पायथन 2.7 के लिए और पहले
यहाँ आप इसे कैसे प्राप्त कर सकते हैं आयात उपप्रकार Fnull = Open (os.Devnull, 'W') retcode = subprocess.call (['इको', 'फू'], stdout = fnull, stderr = subprocess.stdout)
को /dev /null फ़ाइल (NULL डिवाइस का प्रतिनिधित्व करते हुए, जो इसे लिखे गए किसी भी डेटा को छोड़ देता है) को खोलकर और इसे stdout और stderr तर्कों के रूप में पारित करता है। हम प्रभावी रूप से सभी सबप्रोसेस आउटपुट को शून्य पर पुनर्निर्देशित करते हैं, एक स्वच्छ और अप्रकाशित टर्मिनल को सुनिश्चित करते हुए। शेल कमांड। जबकि यह विधि कम पोर्टेबल है और आम तौर पर पायथन स्क्रिप्ट में उपयोग के लिए अनुशंसित नहीं है, यह कुछ परिदृश्यों में उपयोगी हो सकता है:
import subprocess retcode = subprocess.call(['echo', 'foo'], stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT)
यह दृष्टिकोण सीधे एक शेल कमांड को निष्पादित करता है, इको कमांड के आउटपुट को /dev /null के आउटपुट को पुनर्निर्देशित करता है> ऑपरेटर का उपयोग करके। आउटपुट और एक साफ और पठनीय आउटपुट डिस्प्ले बनाए रखें। इन तकनीकों का उपयोग करके, आप प्रभावी रूप से सबप्रोसेस आउटपुट को छिपा सकते हैं और यह सुनिश्चित कर सकते हैं कि केवल वांछित जानकारी उपयोगकर्ता को प्रस्तुत की जाती है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3