Le module __glob __ est utile pour obtenir une liste de fichiers dans le même répertoire.
Essayez d'exécuter glob dans le répertoire où les fichiers suivants sont enregistrés. data1.txt, data10.txt, data2.txt, data3.dat, data99.txt, result1.txt, result2.dat
Vous pouvez obtenir une liste de tous les fichiers dans le même répertoire par le processus suivant.
import glob
filelist=glob.glob('*')
print(filelist)
Résultat d'exécution
['data1.txt', 'data10.txt', 'data2.txt', 'data3.dat', 'data99.txt', 'result1.txt', 'result2.dat']
Vous pouvez utiliser le caractère générique «*» pour répertorier uniquement les noms de fichiers répondant à certains critères. Dans l'exemple ci-dessous, les noms de fichiers commençant par'data 'et ceux avec l'extension'.txt' sont répertoriés respectivement.
filelist=glob.glob('data*') #'data'Liste tous les noms de fichiers commençant par
print(filelist)
filelist=glob.glob('*.txt') #'.txt'Liste tous les noms de fichiers se terminant par
print(filelist)
Résultat d'exécution
['data1.txt', 'data10.txt', 'data2.txt', 'data3.dat', 'data99.txt']
['data1.txt', 'data10.txt', 'data2.txt', 'data99.txt', 'result1.txt']
Si vous souhaitez spécifier le nombre de caractères dans la partie générique, utilisez '?' Au lieu de '*'. Connectez autant de «?» Que le nombre de caractères que vous souhaitez spécifier. Dans l'exemple ci-dessous, vous pouvez lister les fichiers contenant deux caractères quelconques entre "data" et ".txt ".
filelist=glob.glob('data??.txt') #'data'Quand'.txt'Répertoriez tous les fichiers contenant deux caractères entre
print(filelist)
Résultat d'exécution
['data10.txt', 'data99.txt']
Vous pouvez aussi utiliser []. Dans ce cas, les fichiers entre [] qui correspondent à l'un des caractères alphanumériques de [] sont répertoriés.
filelist=glob.glob('data[0-9].txt') #[0-9]Liste tous les éléments qui ont un nombre de 0 à 9 dans la partie
print(filelist)
Résultat d'exécution
['data1.txt', 'data2.txt']
Recommended Posts