2016-07-25 2 views
1

나는 1 또는 2 개의 IP 주소를 구문 분석 할 수있는 함수를 쓰려고 노력하고있다. & searchterm.Python Argparse 사용법

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

argparse를 사용하여 쉼표로 구분 된 문자열 목록을 구문 분석 한 다음 목록을 스캔하여 하나 또는 두 개의 IP를 가져올 수 있습니다. 검색 용어는 기본 argparse입니다. – Abhinav

+0

선택적으로 IP의 수를 제한하는'nargs'도 가능합니다. – Abhinav

답변

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 인수에 대해 단일 백 슬래시 문자를 이스케이프하는 데 사용됩니다. nargs 키워드가 프로그램에 전달되는 인수의이 종류의 수를 알려줍니다

args = parser.parse_args() 
args.ips 
args.search_term 

: 복귀 사전을 parser.parse_args() 호출하여 다음과 같이 접근 할 수 있습니다 구문 분석하여 인수를 포함합니다.

+ 적어도 하나의 의미는 1은 전달할 하나의 인수를 의미합니다.

+0

고마워요. –

0

는 다시 시작하려면 다음과 같이 argparse 사용할 수 있습니다.

parser = argparse.ArgumentParser() 
parser.add_argument('--IP', nargs=2) 
parser.add_argument('--TERM', nargs=1) 
관련 문제