Entrada e Saída com Python

0 – Python
1 – Conhecimento Base
1.0 – Configuracoes
1.1 – Tipos de Dados
1.2 – Declaração de Variáveis
1.3 – Declaração de Constantes
1.4 – Funções e Módulos
1.5 – Orientação a Objetos
1.6 – Módulos e Pacotes
1.7 – Entrada e Saída
1.8 – Bibliotecas Integradas – Pypi
1.9 – Paradgmas de Programação
1.10 – Frameworks Populares (ecosistema)
LEGENDA
Nivel_1
Nivel_2
Nivel_3

Entrada e Saída com Python: Trabalhando com Dados

A entrada e saída (E/S) é essencial em qualquer programa. Em Python, isso envolve ler dados do usuário ou arquivos. Também inclui exibir resultados na tela ou gravá-los. Primeiramente, a função input() captura texto do teclado. Por exemplo, nome = input("Digite seu nome: ") espera uma resposta. Todo dado vindo de input() é uma string por padrão. Portanto, conversões como int() ou float() são necessárias. Isso é feito quando esperamos números para cálculos. Além disso, a saída padrão usa print() para mostrar informações. Podemos formatar a saída de várias maneiras elegantes. Por exemplo, f-strings permitem inserir variáveis diretamente: print(f"Olá {nome}"). Outro método é o str.format() ou formatação com %. A escolha depende da legibilidade e da versão do Python. A voz passiva é aplicada aqui: “os dados são lidos como strings”. Assim, lembre-se sempre de validar a entrada do usuário.

Leitura e escrita em arquivos

Trabalhar com arquivos é comum em aplicações reais. Usamos a função open() para acessar arquivos no disco. O modo 'r' significa leitura, e 'w' escrita (sobrescreve). Já 'a' adiciona conteúdo ao final do arquivo. Um arquivo deve ser fechado com .close() após o uso. No entanto, a prática recomendada é o bloco with open(...) as f:. Isso garante fechamento automático, mesmo com erros. Quando usar arquivos? Sempre que precisar persistir dados entre execuções. Por exemplo, salvar configurações, logs ou resultados de processamento. A leitura linha a linha é feita com for linha in arquivo:. Isso é eficiente para arquivos grandes, pois não carrega tudo na memória. Já .read() lê o arquivo inteiro como uma string. Então, prefira iteração para arquivos com milhões de linhas. Foi observado que muitos iniciantes esquecem de fechar arquivos. Por isso, o gerenciador de contexto with é tão valioso. Veja um exemplo prático de leitura e escrita:

No código acima, o arquivo é criado e lido corretamente. Cada linha é processada individualmente sem sobrecarga. Esse padrão é usado em processamento de logs ou CSVs. Ademais, podemos trabalhar com arquivos binários (modo 'rb' ou 'wb'). Isso é útil para imagens, áudio ou qualquer dado não textual.

Entrada e saída com tratamento de erros

Entradas externas são fontes frequentes de erros. O usuário pode digitar texto onde esperamos um número. O arquivo pode não existir ou faltar permissão de leitura. Portanto, todo código de E/S deve ser protegido com try/except. Por exemplo, ValueError ocorre quando a conversão de tipo falha. Já FileNotFoundError surge ao abrir um arquivo inexistente. Quando utilizar esse tratamento? Sempre que houver interação externa. Isso inclui input(), open() ou leitura de rede. Uma boa prática é informar o erro de forma clara ao usuário. Evite silenciar exceções sem registrar ou tratar adequadamente. A voz passiva é vista aqui: “o erro deve ser capturado e tratado”. Além disso, podemos usar else para código sem erro. E o finally para ações obrigatórias (fechar recursos). Por exemplo, fechar um arquivo manualmente se não usou with. Então, um programa robusto antecipa falhas de E/S. Isso é ainda mais crítico em scripts automatizados ou servidores. Veja um exemplo completo com tratamento:

Esse código jamais quebra com entradas inválidas. Ele tenta converter o texto e repete até obter um número. Para arquivos, retorna None silenciosamente em vez de travar. Isso é chamado de “fail gracefully” – falhar com elegância. Use essa abordagem em qualquer programa interativo. Por fim, lembre-se: a E/S conecta seu programa ao mundo exterior. Portanto, trate-a com o respeito que merece, sempre prevendo o inesperado.

Deixe um comentário