मेरी सभी स्क्रिप्ट्स में मैं मानक झंडे --help
और --version
का उपयोग करता हूं, हालांकि मुझे लगता है कि --version
को parser.add_argument(..., required=True)
के साथ कैसे बनाना है।पायथन Argparse आवश्यक = सही लेकिन --vers कार्यक्षमता?
import sys, os, argparse
parser = argparse.ArgumentParser(description='How to get --version to work?')
parser.add_argument('--version', action='store_true',
help='print version information')
parser.add_argument('-H', '--hostname', dest='hostname', required=True,
help='Host name, IP Address')
parser.add_argument('-d', '--database', dest='database', required=True,
help='Check database with indicated name')
parser.add_argument('-u', '--username', dest='username', required=True,
help='connect using the indicated username')
parser.add_argument('-p', '--password', dest='password', required=True,
help='use the password to authenticate the connection')
args = parser.parse_args()
if args.version == True:
print 'Version information here'
$ ./arg.py --version
usage: arg.py [-h] [--version] -H HOSTNAME -d DATABASE -u USERNAME -p PASSWORD
arg.py: error: argument -H/--hostname is required
हाँ, मैं --hostname
और दूसरों आवश्यक चाहते हैं, लेकिन मैं हमेशा--version
--help
(और -h
) की तरह उचित रूप से काम करना चाहता हूँ ।
$ ./arg.py --help
usage: arg.py [-h] [--version] -H HOSTNAME -d DATABASE -u USERNAME -p PASSWORD
How to get --version to work?
optional arguments:
-h, --help show this help message and exit
--version print version information
-H HOSTNAME, --hostname HOSTNAME
Host name, IP Address
-d DATABASE, --database DATABASE
Check database with indicated name
-u USERNAME, --username USERNAME
connect using the indicated username
-p PASSWORD, --password PASSWORD
use the password to authenticate the connection
काम करने के लिए --version
प्राप्त करने में कोई मदद?
हो (कुंजी त्रुटियों से बचने के चाहिए :) अगर आर्ग में 'संस्करण': प्रिंट 'संस्करण जानकारी यहाँ' – radtek