반응형
Python 명령 줄 인수를 구문 분석하기위한 가장 쉬운 , 가장 간결한 , 가장 유연한 방법 또는 라이브러리는 무엇입니까?
해결 방법
다른 사람들이 지적했듯이 getopt보다 optparse를 사용하는 것이 좋습니다. getopt는 표준 getopt (3) C 라이브러리 함수의 일대일 매핑이며 사용하기가 그리 쉽지 않습니다.
optparse는 좀 더 장황하지만 훨씬 더 구조화되고 나중에 확장하기가 더 간단합니다.
다음은 파서에 옵션을 추가하는 일반적인 행입니다.
parser.add_option('-q', '--query',
action="store", dest="query",
help="query string", default="spam")
그것은 그 자체로 거의 말하고 있습니다. 처리 시간에 -q 또는 --query를 옵션으로 허용하고 인수를 query라는 속성에 저장하며 지정하지 않으면 기본값을 갖습니다. 또한 옵션과 함께 도움말 인수 (-h /-help와 함께 실행할 때 사용됨)를 선언한다는 점에서 자체 문서화됩니다.
일반적으로 다음과 같이 인수를 구문 분석합니다.
options, args = parser.parse_args()
기본적으로 스크립트 (sys.argv [1 :])에 전달 된 표준 인수를 구문 분석합니다.
options.query는 스크립트에 전달한 값으로 설정됩니다.
단순히 다음을 수행하여 파서를 만듭니다.
parser = optparse.OptionParser()
이것들은 필요한 모든 기본 사항입니다. 다음은이를 보여주는 완전한 Python 스크립트입니다.
import optparse
parser = optparse.OptionParser()
parser.add_option('-q', '--query',
action="store", dest="query",
help="query string", default="spam")
options, args = parser.parse_args()
print 'Query string:', options.query
기본 사항을 보여주는 5 줄의 파이썬.
sample.py에 저장하고 다음으로 한 번 실행하십시오.
python sample.py
그리고 한번
python sample.py --query myquery
그 외에도 optparse는 확장하기가 매우 쉽습니다.
참조 페이지 https://stackoverflow.com/questions/20063
반응형
'파이썬' 카테고리의 다른 글
파이썬 matplotlib에서 서브 플롯 사이의 간격을 제거하는 방법은 무엇입니까? (0) | 2020.12.31 |
---|---|
파이썬 중첩 함수는 Python에서 어떻게 작동합니까? (0) | 2020.12.31 |
파이썬 Pandas 데이터 프레임은 각 그룹의 첫 번째 행을 가져옵니다. (0) | 2020.12.31 |
파이썬 키 값을 사용하고 해당 값이없는 Python에서 사전 초기화 (0) | 2020.12.31 |
파이썬 파싱에서 요청 URL을 가져옵니다. (0) | 2020.12.31 |
댓글