0
파이썬에서 서브 프로세스 모듈과 함께 C 프로그램을 실행하여 변수에 출력을 캡처하려고합니다. 이 코드는 다음과 같다 :Python : subprocess.communicate() : print() 함수가 있지만 print가 내장되어 있지 않은 ValueError
process = Popen(["myprog", str(length), filename], stdout=PIPE, stderr=PIPE)
#wait for the process
result = process.communicate()
end=time()
print result
상기 코드는 작동 - result
가 myprog
의 표준 출력과 출력이 문자열로 열려진 출력 2- 튜플 나타낸다.
... 그러나 내가 print(result)
에 print result
을 변경하면 ...
Traceback (most recent call last):
File "tests.py", line 26, in <module>
print(result)
ValueError: I/O operation on closed file
내가 완전히 여기 난처한 상황에 빠진거야, 나는 심지어 이것을 설명하려고 어디서부터 시작 모르겠어요! 물론, 제 프로그램은 어쨌든 작동하지만, 저는 그것이 실제로 일어난 이유를 알고 싶습니다. 그리고 흥미로운 질문이되기를 바랍니다.
당신이 우리에게 전체 파이썬과 모든 C 프로그램을 보여 주시겠습니까 : 파이썬 컴파일러가없는 연산과 괄호를보고 결과 바이트 코드가 동일하기 때문에 모든 더 차이가 없습니다 ? – User