2015. 6. 12. 15:05

getopt 모듈의 getopt함수를 이용하면, 

sys.argv로 전달받은 명령행의 인수리스트에서 옵션을 분리해 낼 수 있다!


아래와 같이 쓸 수 있다.

import sys

import getopt


options, args = getopt.getopt(sys.argv[1:], 'a:b:c:')


for op, p in options:

    if op == '-a':

        print 'option a', p

    elif op == '-b':

        print 'option b', p

    elif op == '-c':

        print 'option c', p

    else:

        print 'Unknown option', op

print args

$ python _getopt.py -a apple -b banana -c cat people agg

[('-a', 'apple'), ('-b', 'banana'), ('-c', 'cat')]

option a apple

option b banana

option c cat

['people', 'agg']


getopt함수

첫번째 : 인수리스트(sys.argv[1:])

두번째 : 옵션문자들('a:b:c:')

이때 옵션문자에 :가 사용된다면 옵션에 추가의 인수를 받아들인다는 의미!

abc:de:

라면, a,b,d는 단독옵션이고, c,e는 인수를 갖는 옵션이다!


출처: 열혈강의 파이썬프로그래밍(이강성저)



Posted by Triany