logo

os.walk() Pythonissa

Kuinka käydä tiedostojärjestelmä läpi Pythonissa? Oletetaan, että olemme antaneet alla tiedostorakenteen järjestelmässämme ja haluamme käydä läpi kaikki sen haarat kokonaan ylhäältä alas? Esimerkki tiedostojärjestelmästä

Miten os.walk() toimii pythonissa?

OS.walk() luo tiedostojen nimet hakemistopuussa kulkemalla puuta joko ylhäältä alas tai alhaalta ylös. Jokaiselle puun hakemistolle, jonka juuret ovat hakemiston yläosassa (mukaan lukien itse ylhäällä), se tuottaa 3-tuplen (dirpath, dirnames, tiedostonimet).



  • juuri: Tulostaa vain määrittämäsi hakemistot.
  • sanoa: Tulostaa päähakemistosta alihakemistot.
  • tiedostot : Tulostaa kaikki tiedostot juurista ja hakemistoista.
Python 3
# Driver function import os if __name__ == "__main__": for (root,dirs,files) in os.walk('.', topdown=True): print (root) print (dirs) print (files) print ('--------------------------------')>

Lähtö:

['gfg-article-deep-crawl-master (1)', '.ipynb_checkpoints'] ['t.pdf', 'Untitled.ipynb'] -------------------------------- ./gfg-article-deep-crawl-master (1) ['gfg-article-deep-crawl-master'] [] -------------------------------- ./gfg-article-deep-crawl-master (1)/gfg-article-deep-crawl-master ['check_rank'] ['rank_scraper.py', 'search-page (copy).html', '.gitignore', 'search-page.html', 'globals.py', 'requirements.txt', 'sel_scraper.py', 'README.md'] -------------------------------- ./gfg-article-deep-crawl-master (1)/gfg-article-deep-crawl-master/check_rank [] ['selenium.py', 'tools.py', '__init__.py', 'run_check.py'] -------------------------------- ./.ipynb_checkpoints [] ['Untitled-checkpoint.ipynb'] -------------------------------->

Sisäkkäisten luetteloiden ymmärtäminen Os.Walkin avulla

Ohjelma löytää python-tiedostot hakemistopuusta, mikä tarkoittaa, että meidän on löydettävä tiedostot, joiden pääte on .py.

Python
# code import os if __name__ == '__main__': pythonFiles = [file for dirs in os.walk('.', topdown=True) for file in dirs[2] if file.endswith('.py')] print('python files in the directory tree are ') for r in pythonFiles: print(r)>

Lähtö
python files in the directory tree are Solution.py>