Jak uzyskać listę plików katalogu przy użyciu Pythona?

Próbuję uzyskać listę plików w katalogu przy użyciu Pythona, ale nie listę WSZYSTKICH plików. Chcę wykonać coś takiego, ale bez użycia ls.

ls 12345 * .jpg

Jeśli nie ma wbudowanej metody, myślę o napisaniu pętli for, aby iterować wyniki os.listdir () i dołączyć wszystkie pasujące pliki do nowej listy. W tym katalogu znajduje się sporo plików, mam nadzieję że istnieje bardziej wydajna metoda?

Z góry dziękuję za pomoc! :)

1 odpowiedź

najlepsze rozwiązanie to użyć:

glob.glob („12345 * .jpg”)

glob.glob () to zdecydowanie dobry sposób na zrobienie tego. Jeśli jednak potrzebujesz bardziej skomplikowanego dopasowywania, możesz to zrobić za pomocą funkcji list list i re.match (), mniej więcej tak:

files = [f for f in os.listdir('.') if re.match(r'[0-9]+.*\.jpg', f)]

Bardziej elastyczny, ale za to mniej wydajny.

Twoja odpowiedź

Zaloguj się aby odpowiedzieć.

Operiada

Operiada to polskojęzyczne forum informatyczne działające na zasadzie pytań i odpowiedzi.

Obserwowane tagi

Zaloguj się aby obserwować tagi.