DEV Community

Francisco Júnior
Francisco Júnior

Posted on

Introdução ao Módulo pathlib

O pathlib fornece classes para representar caminhos de arquivos e diretórios. Ele abstrai as diferenças entre sistemas operacionais, tornando mais simples a manipulação de caminhos e a realização de operações em arquivos.

Funcionalidades Principais

Criação de Objetos de Caminho (Path)

O módulo pathlib oferece a classe Path para representar caminhos de arquivos e diretórios.

from pathlib import Path

# Criando um objeto de caminho para um arquivo
file_path = Path('caminho/do/arquivo.txt')

# Criando um objeto de caminho para um diretório
directory_path = Path('caminho/do/diretorio')
Enter fullscreen mode Exit fullscreen mode

Navegação e Informações de Caminho

O objeto Path oferece métodos para acessar informações sobre o caminho e realizar navegação.

from pathlib import Path

path = Path('caminho/do/arquivo.txt')

# Verificando se o caminho existe
print(path.exists())

# Verificando se é um arquivo ou diretório
print(path.is_file())
print(path.is_dir())

# Obtendo o nome do arquivo
print(path.name)

# Obtendo o diretório pai
print(path.parent)

# Resolvendo caminhos relativos
print(path.resolve())
Enter fullscreen mode Exit fullscreen mode

Manipulação de Arquivos e Diretórios

A classe Path oferece métodos para criação, remoção e renomeação de arquivos e diretórios.

from pathlib import Path

# Criando um novo diretório
new_directory = Path('novo_diretorio')
new_directory.mkdir()

# Criando um arquivo
new_file = new_directory / 'novo_arquivo.txt'
new_file.touch()

# Removendo um arquivo ou diretório
new_file.unlink()
new_directory.rmdir()
Enter fullscreen mode Exit fullscreen mode

Exemplos de Uso

Navegação e Listagem de Arquivos

from pathlib import Path

directory = Path('diretorio')

# Listando arquivos em um diretório
for item in directory.iterdir():
    print(item)
Enter fullscreen mode Exit fullscreen mode

Buscar Arquivos por Padrão

from pathlib import Path

directory = Path('diretorio')

# Buscando arquivos que correspondem a um padrão específico
for file in directory.glob('*.txt'):
    print(file)
Enter fullscreen mode Exit fullscreen mode

Conclusão

O pathlib oferece uma abordagem mais moderna e intuitiva para manipulação de caminhos em comparação com métodos mais antigos, como os do módulo os.path. Sua sintaxe orientada a objeto simplifica a interação com arquivos e diretórios, permitindo uma manipulação mais clara e concisa dos caminhos no sistema de arquivos. Com a simplicidade e poder oferecidos pelo pathlib, ele se torna uma escolha valiosa para operações de manipulação de arquivos e diretórios em Python. Sua presença na biblioteca padrão do Python e sua capacidade de simplificar tarefas relacionadas a caminhos tornam o pathlib uma ferramenta fundamental para desenvolvedores Python.

Do your career a big favor. Join DEV. (The website you're on right now)

It takes one minute, it's free, and is worth it for your career.

Get started

Community matters

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay