Como Verificar se um Arquivo Existe em Python Sem Exceções

Ana Maria Gomes
4 minutos de leitura

Conteúdos do tutorial

Ao trabalhar com arquivos em Python, é comum precisar verificar se um arquivo existe antes de realizar operações com ele. No entanto, você pode querer evitar o tratamento de exceções, o que normalmente é feito usando uma instrução try. Felizmente, o Python oferece vários métodos para verificar a existência de um arquivo sem usar exceções.

Usando os.path.isfile e os.path.exists

O módulo os em Python é uma utilidade para interagir com o sistema operacional. Dentro deste módulo, existem funções especificamente projetadas para verificar a existência de arquivos e diretórios.

Verificando se um Arquivo Existe

Para determinar se um caminho específico aponta para um arquivo existente, você pode usar a função os.path.isfile. Esta função retorna True se o caminho for um arquivo regular existente. Aqui está um exemplo simples:

import os.path

nome_arquivo = "/caminho/para/seu/arquivo.txt"
if os.path.isfile(nome_arquivo):
    print("Arquivo existe")

Verificando se um caminho existe

Se você quiser verificar se um caminho é um arquivo ou um diretório, você pode usar os.path.exists. Esta função retorna True tanto para arquivos quanto para diretórios. Veja como você pode usá-la:

import os.path

caminho = "/caminho/para/seu/arquivo_ou_diretorio"
if os.path.exists(caminho):
    print("Caminho existe")

Usando o Módulo pathlib

Para aqueles que usam Python 3.4 ou superior, o módulo pathlib oferece uma abordagem orientada a objetos para caminhos de sistemas de arquivos. Veja como você pode usá-lo:

Verificando se um Arquivo Existe com pathlib

from pathlib import Path

meu_arquivo = Path("/caminho/para/arquivo.txt")
if meu_arquivo.is_file():
    print("Arquivo existe")

Verificando se um Diretório Existe com pathlib

from pathlib import Path

meu_diretorio = Path("/caminho/para/diretorio")
if meu_diretorio.is_dir():
    print("Diretório existe")

Verificando se um caminho existe com pathlib

Para verificar se um caminho existe, independentemente de ser um arquivo ou um diretório, você pode usar o método exists:

from pathlib import Path

meu_caminho = Path("/caminho/para/alguma_coisa")
if meu_caminho.exists():
    print("Caminho existe")

Resumo

Em resumo, para verificar se um arquivo existe sem exceções em Python, você pode usar os.path.isfile se estiver interessado apenas em arquivos, ou os.path.exists se quiser verificar tanto arquivos quanto diretórios. Para uma abordagem mais moderna e orientada a objetos, você pode usar o objeto Path do módulo pathlib e seus métodos is_file, is_dir e exists. Esses métodos fornecem uma maneira segura de verificar a existência de um arquivo ou diretório antes de prosseguir com operações de arquivo adicionais e são formas simples de evitarmos exceções.

Inscreva-se gratuitamente e fique atualizado

Receba toda semana um resumo dos principais conteúdos da Asimov direto no seu e-mail. 100% livre de spam.

Áreas de interesse:
Conteúdos do tutorial