2009年8月29日星期六

Useful Python commands

Read arguments
import sys
print 'Whole Array:', sys.argv # ['./test.py', '-f', '2.4', '-s', '1000']
print 'File Name:', sys.argv[0] # ./test.py
print 'Arguments:', sys.argv[1:] # ['-f', '2.4', '-s', '1000']

Read arguments using OptionParser?


# Input: ./test.py -s 1000

from optparse import OptionParser

parser = OptionParser()
parser.add_option("-s", "--size", type="float", default=400, help="size [default=%default]")
parser.add_option("","--enable", action="store_true", default=False, help="enable something")

# Parse the arguments
(options, args) = parser.parse_args()

print options # {'enable': False, 'size': 1000.0}
print options.size # 1000
print options.enable # False

# Examples
# Input: ./test.py -f 1000
# Output: test.py: error: no such option: -f
# Input: ./test.py --help
# Output: Show the "help" description

# Input: ./test.py --help
# Output: Show the "help" description with 2 groups

from optparse import OptionParser
from optparse import OptionGroup

parser = OptionParser()

# First group in "--help" ("Normal Options")
group1 = OptionGroup(parser, "Normal Options", "Simple description")
group1.add_option("-s", "--size", type="float", default=400, help="size [default=%default]")
group1.add_option("","--enable", action="store_true", default=False, help="enable something")

# Second group in "--help" ("Expert Options")
group2 = OptionGroup(parser, "Expert Options", "Simple description")
group2.add_option("-f", "--freq", type="float", default=100, help="freq [default=%default]")

# Add groups into parser
parser.add_option_group(group1)
parser.add_option_group(group2)

# Parse the arguments
(options, args) = parser.parse_args()

没有评论:

发表评论