1
나는 파이썬의 subprocess.call 방법으로 정수 값을 전달하기 위해 노력하고 있습니다 :어떻게 파이썬의 subprocess.call 메소드에 정수 값을 전달할 수 있습니까?
subprocess.call('samtools','view','-bq', '1','DS130.bam','>','DS130umr.bam')
인수를 '-bq은'정수 값이어야합니다 후. 그러나 나는 subprocess.call 문자열로 취급 계속 믿고 그래서 오류 'TypeError 점점 : bufsize 정수 여야합니다'.
'1'을 정수 값으로 해석하기 위해 subprocess.call을 어떻게 얻을 수 있습니까?
나는 할 수 있었다 shell = True 인수를 사용하여 subprocess.call을 올바르게 실행하십시오. 그러나 출력 리디렉션을 사용하여 시도 할 때 ValueError : stdout 인수를 사용할 수 없으면이 오류가 발생하여 재정의됩니다. 내가 대신이 일을 끝내고 그것은 일했다 : open ('DS130umr.bam', 'wb') sys.stdout : subprocess.check_output ([ 'samtools', 'view', '-bq', '1' , 'DS130.bam']) – JayKu12
@ JayKu12 : 죄송합니다. 대신'subprocess.call()'을 사용하려고합니다. 당신은'sys.stdout'에 할당하는 것에 조심해야합니다; 이제'sys.stdout = sys .__ stdout__'을 사용하여 원본을 복원해야합니다. –