Eu posso usar o .* do módulo re em uma variável para me referir a todas as extensões em um SO??
ext = (".*")
def listdir():
for f in os.scandir():
Eu posso usar o .* do módulo re em uma variável para me referir a todas as extensões em um SO??
ext = (".*")
def listdir():
for f in os.scandir():
Olá, Andre.
Tudo bem?
Você pode usar expressões regulares (regexp) com o módulo re
do Python para buscar arquivos com determinadas extensões. No entanto, o .*
sozinho não é suficiente para filtrar por extensões específicas, pois ele corresponde a qualquer sequência de caracteres. Se você quiser listar arquivos com qualquer extensão, o .*
pode funcionar, mas geralmente você vai querer especificar um padrão mais preciso.
Aqui está um exemplo de como você pode listar arquivos com qualquer extensão usando o módulo re
e os
:
import os
import re
# Padrão para qualquer extensão
pattern = re.compile(r'.*\..*')
def listdir():
for entry in os.scandir():
if entry.is_file() and pattern.match(entry.name):
print(entry.name)
listdir()
Neste exemplo, .*\..*
é a expressão regular que corresponde a qualquer nome de arquivo que contenha um ponto seguido de qualquer sequência de caracteres (ou seja, qualquer extensão).
Se você quiser especificar extensões específicas, você pode ajustar o padrão. Por exemplo, para listar apenas arquivos .txt
e .pdf
:
import os
import re
# Padrão para .txt e .pdf
pattern = re.compile(r'.*\.(txt|pdf)$')
def listdir():
for entry in os.scandir():
if entry.is_file() and pattern.match(entry.name):
print(entry.name)
listdir()
Seria isso? Qualquer coisa manda aqui.
Espero ter ajudado e bons estudos!