class StartAction(argparse.Action):
def __call__(self, parser, namespace, values, option_string=None):
print "Hello"
start.add_argument('-s', '--start', action=StartAction)
मुझे पता है कि सामान्य रूप से कार्रवाई 'store_true' जैसी कुछ होती है, जो तर्क की आवश्यकता को रोकती है, लेकिन क्या कस्टम कार्रवाई का उपयोग करने का कोई तरीका है और अभी भी पास होने के लिए तर्क की आवश्यकता नहीं है?Argparse - कोई तर्क के साथ कस्टम कार्रवाई?
तो मैं क्या चाहते है:
python example.py -s
Hello
वैल्यूएरर: स्टोर क्रियाओं के लिए नर्ग> 0 होना चाहिए; अगर आपके पास स्टोर करने के लिए कुछ भी नहीं है, तो स्टोर सही या स्टोर कॉस्ट जैसी गतिविधियां अधिक उपयुक्त हो सकती हैं – Lucina
मैं @ लुसीना टिप्पणी से सहमत नहीं हूं। आप पार्सिंग तर्कों और जटिल कार्यों के बीच एक निर्बाध मानचित्रण करने के लिए एक कस्टम कार्रवाई को कॉल करना चाह सकते हैं। मैं एक्शन ऑब्जेक्ट्स को प्राथमिकता देता हूं जो सीएलआई के पैरामीटर के रूप में व्यवहार करते हैं, इसलिए मेरे पास सीएलआई इटरफेस और ऑब्जेक्ट जो इसे संभालता है, के बीच बहुरूपता है। – Daniel