मैं विभिन्न समूहों के बीच एक पारस्परिक रूप से अनन्य समूह रखने की कोशिश कर रहा हूं: मेरे पास तर्क हैं- ए, -बी, -सी, और मैं एक साथ और एक साथ संघर्ष करना चाहता हूं , या-ए और -सी एक साथ। सहायता कुछ दिखाना चाहिए [-a | ([-बी] [-सी])]।समूहों के बीच परस्पर अनन्य का उपयोग
import argparse
parser = argparse.ArgumentParser(description='My desc')
main_group = parser.add_mutually_exclusive_group()
mysub_group = main_group.add_argument_group()
main_group.add_argument("-a", dest='a', action='store_true', default=False, help='a help')
mysub_group.add_argument("-b", dest='b', action='store_true',default=False,help='b help')
mysub_group.add_argument("-c", dest='c', action='store_true',default=False,help='c help')
parser.parse_args()
विभिन्न संयोजनों पार्स - सभी पास::
निम्नलिखित कोड परस्पर अनन्य विकल्प हैं करने के लिए प्रतीत नहीं होता
> python myscript.py -h
usage: myscript.py [-h] [-a] [-b] [-c]
My desc
optional arguments:
-h, --help show this help message and exit
-a a help
> python myscript.py -a -c
> python myscript.py -a -b
> python myscript.py -b -c
मैं mysub_group
बदलते add_mutually_exclusive_group
होना करने की कोशिश की पारस्परिक रूप में सब कुछ बदल जाता है अनन्य:
> python myscript.py -h
usage: myscript.py [-h] [-a | -b | -c]
My desc
optional arguments:
-h, --help show this help message and exit
-a a help
-b b help
-c c help
मैं [-a | के लिए तर्क कैसे जोड़ सकता हूं ([-बी] [-सी])]?
कोई भी चीज़ जो मैं चाहता हूं, क्योंकि यह मुझे केवल -c (बिना -b के) के विकल्प का विकल्प नहीं देता है। – itzhaki
यह सच है, मेरी माफ़ी। मुझे नहीं लगता कि आप तर्क के साथ जो भी चाहते हैं उसे प्राप्त कर सकते हैं, लेकिन मुझे अभी भी लगता है कि डॉकॉप एक अच्छी पसंद है, आप बस उपयोग जोड़ देंगे: myscript.py [-h | -ए | [-बी-सी]] आपके डॉकस्ट्रिंग में और यह आपके लिए सब कुछ काम करेगा –