-1
votes

Quelqu'un peut-il expliquer la signification de glob_glob () dans Python?

J'essaie de le comprendre en lisant la documentation, mais je ne comprends toujours pas la différence entre recursive = true | faux et pourquoi dois-je écrire ' * 'ou' ** 'dans le nom du chemin.


1 commentaires

GLOB - STOCK NAME de style UNIX Je dirais que vous avez d'abord besoin de comprendre le chemin de style UNIX pour comprendre GLOB.


3 Réponses :


1
votes

* est une carte générique pour les noms de fichier, vous pouvez aller \ path \ * pour récupérer tous les éléments dans chemin ou \ Chemin \ *. Txt Pour récupérer tous les fichiers texte. Vous pouvez également utiliser ? pour un seul caractère wildcard.

si récursif est défini sur true, ** est un indicateur de récursivité, si vous utilisez \ path \ ** \ test?. * / code> Il recherchera tout fichier qui commence par test et comporte un seul caractère après (par exemple, test1, test2) avec n'importe quelle extension, à l'intérieur de tout sous-dossier de chemin récursivement (merci à ** ).


0 commentaires

1
votes

** a un comportement de correspondance de répertoire récursif lorsque récursif = true .

récursif = true est nécessaire pour passer sur le motif. Sinon, ** est juste deux distincts * , chacun de zéro ou plusieurs caractères correspondant.

Jusqu'à récemment, le module glob n'a pas pris en charge la correspondance récursive et il y a beaucoup de code là-bas qui peut avoir utilisé ** ** dans les motifs ainsi que les développeurs de noyau Python ont fait " t veux casser ce code.


0 commentaires

0
votes

Si le nom du chemin contient uniquement * , récursif n'est pas utile; Si récursif est faux, ** n'est pas différent de * . Seulement si le nom du chemin contient ** et recursive est vrai, ** correspondra à tous les fichiers.


0 commentaires