2012-05-25 3 views
-1

저는 파이썬 스크립트 a.py와 b.py를 가지고 있습니다. 저는 b.py의 주요 기능을 호출하고 a.py에서 인수를 전달하고 싶습니다. 코드 내부에서 a.py의 옵션을 추가하여 b.py? 사전에 추가 옵션을 추가하려고했지만 알 수없는 이유로 b.py가 올바른 값을 얻지 못합니다. add_option은 명령 행 옵션에서만 작동합니다.파이썬 코드에서 옵션을 추가하는 방법은 무엇입니까?

b를 a.py에서 가져 왔으며, readOnly 값을 b.py에서 main으로 전달하려고합니다. 기본적으로 나는 a.py에서 readOnly를 명령 줄로 전달하지 않고 readOnly를 a.py 내의 코드를 통해 전달하려고합니다.

왜이 코드가 작동하지 않습니까?

TIA,

+0

후 몇 가지 코드를, 어쩌면 –

+0

을 지금까지 시도 무엇입니까? 'b'를 가져 오거나 별도의 프로세스로 실행합니까? –

+0

가능한 [다른 python 스크립트 파일 내부에서 인수로 파이썬 스크립트 파일을 실행하는 방법] (http://stackoverflow.com/questions/4230725/how-to-execute-a-python-script-file-with) -an-argument-inside-another-python) –

답변

1

b.mainargv 매개 변수를 사용하지 않기 때문에 작동하지 않습니다.

매개 변수로 argv에서 parse_args을 전달할 수 있지만 사전이 아닌 문자열 목록이어야합니다.

a이 시도 :

b.main(["-r"]) 
+0

도움을 주신 Janne에게 감사드립니다. – JohnX

2

당신은 공식 문서에서 예제를 참조한다 : 이전 파이썬 argparse

에 대한 http://docs.python.org/dev/library/argparse.html이 정말 좋은 생각이 아니다 http://docs.python.org/dev/library/optparse.html

+0

'argparse'는 Python 3.2입니다. < –

+0

@YuvalAdam : 아니요, argparse도 Python 2.7에서 잘 작동합니다 (http://docs.python.org/library/argparse.html 참조). –

+1

argparse는 여러 버전의 Python에서 사용할 수 있습니다. http://pypi.python.org/pypi/argparse –

0

참조하십시오.

하지만 당신이 그것을 할 필요가 있다면 당신은 운영 체제를 실행으로 그것을 할 수는 다음과 같은 스택 오버 플로우를 읽어야

os.system을 ('script.py "옵션"') 명령

how to execute a python script file with an argument from inside another python script file

+0

아, 질문 포인터를 주셔서 감사합니다. –

+0

파이썬이 내 코드 발췌처럼 쉽게 이것을 할 수 없기 때문에 확실하지 않습니까? – JohnX

+0

이것은 dup ....이 아닙니다. 해당 스레드의 원래 포스터에서 주석을 보면, 작동시킬 수 없었습니다. – JohnX

관련 문제