2012-04-12 3 views
0

파이썬 스크립트 (test1.py)가 있습니다. 박쥐 파일 (render.bat)로 실행해야합니다..BAT 파일에서 .BAT 파일을 가져 와서 Python 스크립트를 입력으로 사용합니다.

질문 1 :

첫째, 내 test1.py에서 정의를했고, 항상 실행하지 못했습니다, 아무 일도하지 않습니다. 누군가 친절하게 설명 할 수 있습니까?

import os 
def test01 : 
    os.system('explorer') 

과 박쥐 파일에

:

python c:/test01.py 

하지만 곧 내가 그것을했다 수비력을 제거한다. 나는 왜 이것이 일어 났는지 배우고 싶다.

질문 2 : 그래서

import os 
def test1(input) : 
    os.system("explorer " + input) 

"입력"내가 뭔가를 실행할 수 있도록 내 파이썬 스크립트 문자열 입력으로 render.bat에서 문자열을 "렌더링"취할 수있는 방법

.BAT 파일 이름에서 가져온 것입니까?

답변

0
  1. 함수는 실제로 전화를 걸지 않는 한 아무 것도하지 않습니다. 스크립트 끝에 test01()을 넣어보십시오.

  2. %0는 당신에게 .bat 포함라는 배치 파일의 전체 이름을 제공 할 것입니다. 스트리핑은 배치 파일보다 파이썬에서 더 쉬울 것입니다.

+0

답변 해 주셔서 감사합니다. 넘버 1은 완벽하게 작동합니다. 두 번째 질문의 경우, % 0을 (를) 캡처하는 데 사용해야하는 Python 스크립트의 명령은 무엇입니까? 다시 감사합니다 – cloud68

+0

'sys.argv '를 통해 캐치 된 인수로 전달합니다. –

+0

친절하게 도와 주셔서 감사합니다. – cloud68

0

는 Question1 : 파이썬에서 키워드 데프는 함수를 정의합니다. 그러나, 당신은 실제로 call 기능이 당신의 작업을 달성하기 위해해야 ​​즉

import os 
def test01(): # do not forget() 
    os.system('explorer') 

test01() # call the function 
0

1) 당신이 명시 적으로 호출해야하는 함수를 사용합니다.

2) %0은 실행중인 스크립트를 나타냅니다. = test.bat

test.bat file

@ echo off 
echo %0 

같은 출력을 생성 그 때문에 당신은 출력에서 ​​ .bat 확장을 제거 할 수 있습니다.

+0

답변 해 주셔서 대단히 감사합니다. 넘버 1은 완벽하게 작동합니다. 두 번째 질문의 경우, % 0을 (를) 캡처하는 데 사용해야하는 Python 스크립트의 명령은 무엇입니까? 다시 한 번 감사드립니다 – cloud68

+0

@ user1328167 :'sys.argv '를 사용해야합니다. – RanRag

+0

친절하게 도와 주셔서 감사합니다. – cloud68

관련 문제