Python - capturar a saída do programa em um arquivo ou variável

Publicado por Fábio Berbert de Paula em 05/09/2020

[ Hits: 5.903 ]

Blog: https://www.instagram.com/alexabolada/

 


Python - capturar a saída do programa em um arquivo ou variável



Python - capturar a saída do programa em um arquivo ou variável
A dica trata de uma necessidade bem incomum. Vamos supor que seu script em Python gere determinada saída de acordo com seu processamento ou iteração com o usuário. Vou abordar duas formas de capturar a saída do programa, uma para um arquivo e outra para uma variável.

Capturando a saída para um arquivo

Você quer gravar a saída do programa para um arquivo de log:

import sys
sys.stdout = open('arquivo.log', 'w')

# segue o jogo...

Simples assim. Toda a saída do programa, ao invés de sair no terminal, será gravada em "arquivo.log".

Capturando a saída para uma variável

Você quer gravar a saída do programa para uma variável:

sys.stdout = capturar_saida = StringIO()

# seu código aqui
# ...

saida = capturar_saida.getvalue()

Simples assim. Toda a saída do programa, ao invés de sair no terminal, será armazenada na variável "saida".

NOTA: se você quiser capturar a saída de erro do programa, basta trocar "sys.stdout" por "sys.stderr".

Outras dicas deste autor

SQL: Combinando INSERT + SELECT para duplicação de registros

Cedilha "ç" saindo como "ć" em teclado US-international [Resolvido]

Como forçar o tipo de arquivo no Vim

Primeira Conferencia Hacker no Brasil

Apache2 - Forçando redirecionamento do site para o www

Leitura recomendada

Internacionalização dos programas em Python

Livro: Python para desenvolvedores

Hardware Project Simulator 0.2 com interface gráfica e correções

Programando em Python no VIM com recurso de auto-completar (python-jedi)

Curso Gratuito - Python 3 na Web com Django (Básico e Intermediário)

  

Comentários
[1] Comentário enviado por maurixnovatrento em 05/09/2020 - 23:34h


Muito legal.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts