Předmět Autor Datum
import os rootDir = '.' for dirName, subdirList, fileList in os.walk(rootDir): print('Found directo…
dsa 26.01.2022 14:27
dsa
Python nijak neznám, tak nevím, jaké má možnosti. Klasický postup spočívá v rekurzivním procházení,… poslední
ml1 26.01.2022 14:44
ml1

Python nijak neznám, tak nevím, jaké má možnosti. Klasický postup spočívá v rekurzivním procházení, zavolá se funkce s názvem adresáře (cestou) a ta prochází adresář, když narazí na vnořený adresář, tak zavolá sebe sama s cestou rozšířenou o adresář. Principiálně je to jednoduché, jenom to ladění dá trochu zabrat, aby se ta rekurze nezacyklila (je potřeba vynechat položky . a ..) což je ale nebezpečí u každé rekurze (dřív nastal brzo konec díky stack owerflow, ale s dnešními pamětmi i tohle trvá dost dlouho) a tak podobně. Programoval jsem to mnohokrát v různých jazycích a prostředích (taky jsem řešil situaci, že se musí nejdřív adresář projít celý a pak teprve procházet další, tedy bylo potřeba si složky někam ukládat a volat další až ke konci té funkce), ale python neznám, i když někdy by se hodil, tak nevím jaké má možnosti (teda procházení složek bude spíš záležitostí operačního systému).

Zpět do poradny Odpovědět na původní otázku Nahoru