python getopt 예제

long_options 값은 선택 사항입니다. 긴 옵션에 매개 변수 값이 필요한 경우 이름은 =으로 끝나야 합니다. 예를 들어(“silent”,”디버그”,”log=”)는 –silent, –debug 및 –log=myfile.log와 같은 옵션이 옵션으로 허용됨을 의미합니다. 좋은 튜토리얼. 그러나, 그것을 밖으로 시도 하 고 온라인 피드의 몇 가지를 읽고에서, 스크립트 는 lst getopt.py 반환 하는 lst 이름을 지정 하지 않아야 합니다–getopt` 모듈에는 아무 속성 `GetoptError – . 이미 실행되는 경우이 문제를 해결하려면 첫 번째 실행 시 생성 된 getopt.pyc 파일을 제거하고 다른 이름 구문 분석 명령줄 인수로 스크립트를 실행하는 것은 매우 일반적인 작업이며 파이썬 getopt 모듈은 파이썬 명령줄 인수를 구문 분석하는 옵션 중 하나입니다. 다음은 -o, -v, –출력, –자세한 내용 및 –버전 : 5 가지 옵션을 취하는 보다 완전한 예제 프로그램입니다. -o, –출력 및 –버전 옵션에는 각각 인수가 필요합니다. 파이썬 2.3의 새로운 기능 gnu_getopt()가 추가되었습니다. 옵션 및 비옵션 인수를 명령줄에 임의의 순서로 혼합할 수 있습니다.

이 모듈은 스크립트가 sys.argv에서 명령줄 인수를 구문 분석하는 데 도움이 됩니다. 유닉스 getopt() 함수와 동일한 규칙을 지원합니다(형식 `-`와 `–`의 인수의 특별한 의미 포함). GNU 소프트웨어에서 지원하는 것과 유사한 긴 옵션은 선택적 세 번째 인수를 통해서도 사용할 수 있습니다. 그래서, 이것은 별도의 목록에서 옵션과 인수를 수집했다. getopt의 가장 좋은 점은 가능한 예외를 정상적으로 관리할 수 있다는 것입니다. 즉, 옵션 인수와 비옵션 인수가 혼합될 수 있습니다. getopt() 함수는 비옵션 인수가 발생하자마자 옵션 처리를 중지합니다. long_options(지정한 경우)는 지원해야 하는 긴 옵션의 이름이 있는 문자열 목록이어야 합니다. 선행 `–` 문자는 옵션 이름에 포함되지 않아야 합니다. 인수가 필요한 긴 옵션 뒤에는 등호(`=`)가 따라야 합니다. 선택적 인수는 지원되지 않습니다. 긴 옵션만 허용하려면 옵션은 빈 문자열이어야 합니다.

명령줄의 긴 옵션은 허용된 옵션 중 하나와 정확히 일치하는 옵션 이름의 접두사를 제공하는 한 인식할 수 있습니다. 예를 들어 long_options가 [`foo`, `frob`]인 경우 옵션 –foo로 일치하지만 –f는 고유하게 일치하지 않으므로 GetoptError가 발생합니다.