我正在尝试编写一个可以解析1或2个ip地址的函数。一个搜索项目。
For example: ./system.py 172.16.19.152,172.16.19.153 model\ name
Output:
Search term: model name
Server: 172.16.19.152
Results:
Processor 0:
model name : Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
Server: 172.16.19.153
Results:
Processor 0:
model name : Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
如何通过argparse获取此使用说明:
usage:./system.py {IP}[,{IP}] {SEARCH\ TERM}
答案 0 :(得分:2)
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('ips',metavar='IP',nargs='+')
parser.add_argument('search_term',metavar='SEARCH\\ TERM',nargs=1)
metavar
关键字将用于您的计划的使用文字。双反斜杠用于转义SEARCH\ TERM
参数的单反斜杠字符。通过调用parser.parse_args()
,返回的字典将包含您解析的参数,可以像这样:
args = parser.parse_args()
args.ips
args.search_term
nargs
关键字将告诉您要传递给程序的此类参数的数量。
+
表示至少有一个,1
表示要传递的一个参数。
答案 1 :(得分:0)
要恢复,您可以使用argparse,如下所示。
parser = argparse.ArgumentParser()
parser.add_argument('--IP', nargs=2)
parser.add_argument('--TERM', nargs=1)