우선, optparse는 2.7 이후로 더 이상 사용되지 않습니다. 그러나 나는 작동중인 컴퓨터에서만 Python 2.3을 사용할 수 있습니다.Python의 optparse에서 정렬 된 옵션
python example.py -f foo -b bar
먼저 옵션 (F) 다음 옵션 B와
python example.py -b bar -f foo
를 실행합니다 :
질문이 조건이 예를 들어, 명령 줄에 주어진 순서를 알고하는 방법입니다
은 그 반대입니다.
나는 options
객체가 특정 순서를 따라야하는 것 같지 않기 때문에, 및이 다른 옵션에 대한 위치를 감지 할 수있는 옵션을 저장하기 위해 callback
조치를 사용하는 것입니다 optargs
문서를 읽은 후 함께했다 유일한 해결책 .
이 문제에 대한 다른 해결책이 있습니까?
규칙은 분명합니다. 문제가되지 않습니다. 왜 명령 줄 구문 분석 규칙을 위반하려고합니까? 일반적으로 규칙을 구현하고 적용하기가 더 쉬운 대체 방법이 있습니다. 이 질문 뒤에 배경은 무엇입니까? –
당신의 현재 솔루션은 나에게 솔직하게 보인다. 문제가 있습니까? –
문제는 "-a"플래그가 일부 데이터를 수정하고 플래그 "-b"가 다른 데이터를 수정하는 것입니다. 물론 함수 A()를 먼저 적용한 다음 함수 B() (또는 다른 방법으로 arround)를 적용하는 것은 동일하지 않습니다. 이 함수들이 적용되는 순서를 지정할 수 있기를 원합니다. 데이터의 변환 A() 및 B()가 플래그'-a' 및'-b'에 의해 트리거되므로 순서를 고려하면이 문제가 해결됩니다. 어쩌면 이것을 할 수있는 또 다른 방법이있을 수 있습니다. 그래서 나는 그 다른 방법을 묻기 위해 질문을 재구성해야합니다. – skd