Manipulação de caminhos
Una, resolva e inspecione caminhos
Manipulação de caminhos é uma aula grátis de Python Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python Academy inclui 4 aulas no total.
Inspecionando e transformando caminhos
Além de construir caminhos, o pathlib permite convertê-los para a forma absoluta, verificar relações entre eles e ler metadados do sistema de arquivos, tudo isso sem usar os.path.
Absoluto ou relativo
is_absolute() informa se um caminho está ancorado na raiz. Os caminhos relativos são interpretados em relação ao diretório atual.
from pathlib import Path
print(Path('docs/file.txt').is_absolute())
print(Path('/usr/local').is_absolute())Resolvendo um caminho
resolve() transforma um caminho em um caminho absoluto e elimina os segmentos . e ... É a opção principal para normalizar caminhos.
from pathlib import Path
p = Path('a/b/../c/file.txt')
print(p.resolve())Fazendo junções com joinpath
Além do operador /, joinpath() acrescenta um ou mais componentes. Ele é útil quando as partes vêm de uma lista.
from pathlib import Path
base = Path('project')
parts = ['src', 'main', 'app.py']
print(base.joinpath(*parts))Caminhos relativos entre dois locais
relative_to() calcula o caminho de um local em relação a outro. Ele gera um erro se o caminho não estiver dentro da base fornecida.
from pathlib import Path
full = Path('/home/user/docs/report.txt')
rel = full.relative_to('/home/user')
print(rel)Verificando um prefixo com is_relative_to
is_relative_to() verifica com segurança se um caminho está dentro de outro, retornando um valor booleano em vez de gerar um erro.
from pathlib import Path
p = Path('/home/user/docs/file.txt')
print(p.is_relative_to('/home/user'))
print(p.is_relative_to('/etc'))Várias extensões
Para nomes como archive.tar.gz, suffixes lista todas as extensões, enquanto suffix fornece apenas a última.
from pathlib import Path
p = Path('archive.tar.gz')
print(p.suffix)
print(p.suffixes)Âncora e unidade
A propriedade anchor é a parte raiz do caminho. No POSIX, ela normalmente é /; no Windows, inclui a letra da unidade.
from pathlib import Path
p = Path('/usr/local/bin')
print('anchor:', p.anchor)
print('parts:', p.parts)Lendo metadados de arquivos
stat() retorna metadados do sistema de arquivos, como o tamanho em bytes. Aqui, criamos um arquivo e lemos seu tamanho.
from pathlib import Path
p = Path('meta.txt')
p.write_text('hello world')
print('size:', p.stat().st_size, 'bytes')Renomeando e movendo
rename() altera o local ou o nome de um caminho. Combinado com os métodos de construção, ele torna a reorganização de arquivos concisa.
from pathlib import Path
old = Path('old_name.txt')
old.write_text('data')
new = old.with_name('new_name.txt')
old.rename(new)
print(new.exists(), new.read_text())Expandindo o atalho do diretório inicial
expanduser() substitui um ~ inicial pelo diretório inicial do usuário, reproduzindo a forma como o shell o expande.
from pathlib import Path
p = Path('~/configs/app.ini')
expanded = p.expanduser()
print(expanded.is_absolute())Verificação rápida
O que o método resolve() faz com um caminho?
Recapitulação
Você aprendeu a fazer junções, resolver e inspecionar caminhos.
resolvecria um caminho absoluto e normalizado.relative_toeis_relative_tocomparam locais.suffix,suffixes,anchorepartsrevelam a estrutura.statlê metadados;renamemove arquivos.
Perguntas Frequentes
A aula “Manipulação de caminhos” é grátis?
Sim — o texto completo de “Manipulação de caminhos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python Academy, atualize para CoddyKit PRO. O curso de Python Academy inclui 4 aulas no total.
O que vou aprender em “Manipulação de caminhos”?
Una, resolva e inspecione caminhos Você pratica Python Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Python Academy?
Nenhuma experiência prévia é necessária. Python Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Manipulação de caminhos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Python Academy?
Sim. Cada aula de Python Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O objeto Path
- Leitura e escrita de arquivos
- Expansão de padrões e iteração
- Manipulação de caminhos