2017-11-28 4 views
1

으로 리디렉션합니다. jupyter 노트북 내부에서 새 3.53부터 subprocess.run 명령을 사용하고 있습니다.subprocess.run 출력을 jupyter 노트북의

일반적으로 python 콘솔에서이 코드를 실행하면 .run() 호출의 출력이 콘솔에 인쇄되지만 Jupyter 전자 필기장의 경우에는 그렇지 않습니다.

.run() 출력을 Jupyter 's로 리디렉션 할 수 있습니까?

알림 실행중인 출력이며 몇 초 정도의 라인을 인쇄하는 명령을 고려하십시오. 따라서 전체 출력을 캡처 한 다음 인쇄하는 방법은 문제가되지 않습니다. 인쇄를 라이브로 수행하고 싶습니다. 방식

답변

1

수정 됨 답변 :

다음

사용자 대신 실행의는 popen()와 :

x = subprocess.Popen(...,stdout=subprocess.STDOUT) 
while True: 
    line = x.stdout.readline() 
    do whatever you want and decide if to print this line or not 
+0

정확히 내가 원하지 않는 것을, 내주의 말씀처럼,이, 전체 출력을 캡처이와 그것을 인쇄 할 때 완료되었습니다, 나는 "라이브"방식으로 인쇄 할 수 있기를 원합니다 – bluesummers

+0

내 대답을 편집했습니다 – ddor254

+0

나는 그것을 시도 할 것입니다, 나는 'True'를 변경할 수있는 것이있어서 명령이 끝났을 때 멈출 것입니다. 또는 오류가 발생 했습니까? – bluesummers

관련 문제