Mój skrypt python wykonuje os.listdir(path)
, gdzie ścieżka jest kolejką zawierającą archiwa, które muszę traktować jeden po drugim.Jak ignorować ukryte pliki za pomocą os.listdir()?
Problem polega na tym, że otrzymuję listę w tablicy, a następnie po prostu wykonuję prosty array.pop(0)
. Wszystko działało dobrze, dopóki nie wprowadziłem projektu w działalność wywrotową. Teraz otrzymuję folder .svn
w mojej tablicy i oczywiście powoduje on awarię mojej aplikacji.
Oto moje pytanie: czy istnieje istniejąca funkcja, która ignoruje ukryte pliki podczas wykonywania os.listdir()
, a jeśli nie, jaki byłby najlepszy sposób?
Dziękuję.
proponowana funkcja 'listdir_nohidden' nie jest całkiem zgodny z' os.listdir', ponieważ użycie 'yield' czyni go generatorem. Zamiast tego powinien przejść przez listę wyjściową z 'os.listdir' i usunąć wpisy zaczynające się od". " – 0sh
@ 0sh: Dlaczego musi usuwać rzeczy na miejscu? Po prostu zdefiniuj nową funkcję, która zawiera 'list (listdir_nohidden (path))' i ta nowa funkcja jest dokładnie zgodna z 'os.listdir'. – abarnert