我需要使用argparse
请求一个参数的值大于等于12。
似乎没有办法在argparse
中仅对给定值设置规则,而只能设置完整的接受值集合,例如choices=['rock','paper','scissors']。
我的代码是:
import sys, argparse
parser = argparse.ArgumentParser()
parser.add_argument("-b", "--bandwidth", type=int, help="target bandwidth >=12")
args = parser.parse_args()
if args.bandwidth and args.bandwidth < 12:
print "ERROR: minimum bandwidth is 12"
sys.exit(1)
我想知道是否有一种方法可以通过一些argparse
选项直接获得这个结果。
argparse.Action
并重写__call__
方法来创建>=12
规则? - Srinivas Reddy Thatiparthy