>  기사  >  백엔드 개발  >  다음은 기사 내용에 적합하고 질문 형식을 사용하는 몇 가지 제목 옵션입니다. 옵션 1(문제에 집중): * `subprocess`를 사용하여 호출된 Python 스크립트에서 출력을 얻으려면 어떻게 해야 합니까? 옵티오

다음은 기사 내용에 적합하고 질문 형식을 사용하는 몇 가지 제목 옵션입니다. 옵션 1(문제에 집중): * `subprocess`를 사용하여 호출된 Python 스크립트에서 출력을 얻으려면 어떻게 해야 합니까? 옵티오

DDD
DDD원래의
2024-10-25 21:29:03490검색

Here are a few title options that fit the article's content and use a question format:

Option 1 (Focus on the problem):

* How Can I Get Output From a Python Script Called Using `subprocess`?

Option 2 (Highlights the solution):

* Retrieving Output fro

Subprocess를 사용하여 다른 스크립트의 입력으로 Python 스크립트 호출

Python에서 subprocess 모듈은 외부 명령이나 스크립트를 실행하는 수단을 제공합니다. . 그러나 다른 스크립트에서 Python 스크립트를 호출하고 입력을 제공하는 경우 출력을 얻는 것이 어려울 수 있습니다.

하위 프로세스 호출에서 출력 가져오기

출력을 검색하려면 하위 프로세스 호출에서는 외부 스크립트의 stdout을 캡처하는 check_output 함수를 사용할 수 있습니다. 이를 달성하는 방법은 다음과 같습니다.

<code class="python">import subprocess

# Path to the external script (a.py)
script_path = 'a.py'

# Input to be provided to the external script
input_data = '\n'.join(['query 1', 'query 2'])

# Execute the external script with input
output = subprocess.check_output([sys.executable, script_path],
                                 input=input_data,
                                 universal_newlines=True)</code>

이 예에서 input_data는 a.py에 대한 입력 쿼리가 포함된 문자열입니다. check_output 함수는 외부 스크립트를 실행하여 입력 쿼리를 stdin으로 제공합니다. 이제 반환된 출력 변수에는 스크립트의 출력이 문자열로 포함됩니다.

대체 접근 방식

subprocess 모듈을 직접 사용하는 것 외에도 내부에서 Python 스크립트를 호출하는 대체 접근 방식이 있습니다. 스크립트:

  • 모듈 가져오기: 외부 스크립트를 기본 스크립트로 가져오고 해당 기능을 직접 호출할 수 있습니다. 이를 위해서는 a.py에서 적절한 모듈 수준 보호가 필요합니다.
  • 다중 처리 사용: 쿼리의 계산 비용이 많이 드는 경우 다중 처리를 사용하여 별도의 프로세스에서 실행하여 잠재적으로 성능을 향상시킬 수 있습니다.

위 내용은 다음은 기사 내용에 적합하고 질문 형식을 사용하는 몇 가지 제목 옵션입니다. 옵션 1(문제에 집중): * `subprocess`를 사용하여 호출된 Python 스크립트에서 출력을 얻으려면 어떻게 해야 합니까? 옵티오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.