“Python Capture Stdout” Kod odpowiedzi

Python Write Subprocess Stdout Stderr do złożenia

with open("stdout.txt","wb") as out, open("stderr.txt","wb") as err:
    subprocess.Popen("ls",stdout=out,stderr=err)
Outrageous Octopus

Python Capture Stdout

from io import StringIO 
import sys

class Capturing(list):
    def __enter__(self):
        self._stdout = sys.stdout
        sys.stdout = self._stringio = StringIO()
        return self
    def __exit__(self, *args):
        self.extend(self._stringio.getvalue().splitlines())
        del self._stringio    # free up some memory
        sys.stdout = self._stdout
        
with Capturing() as output:
    print('hello world')

print('displays on screen')

with Capturing(output) as output:  # note the constructor argument
    print('hello world2')

print('done')
print('output:', output)
Super Shrew

Odpowiedzi podobne do “Python Capture Stdout”

Pytania podobne do “Python Capture Stdout”

Więcej pokrewnych odpowiedzi na “Python Capture Stdout” w Python

Przeglądaj popularne odpowiedzi na kod według języka

Przeglądaj inne języki kodu