Bir dizin ağacına inen (os.walk () kullanarak) ve ardından belirli bir dosya uzantısıyla eşleşen her dosyayı ziyaret eden bir komut dosyası yazıyorum. Ancak, benim araç aynı zamanda kendisi de bir içerdiğini alt dizinleri ihtiva üzerinde kullanılacağını dizin ağaçlarının bazı beri LOT şeyler (bu komut dosyası amacıyla) yararsız, ben kullanıcı belirtmek için ben bir seçenek eklemek düşündüm çapraz geçişten hariç tutulacak dizinlerin listesi.
Os.walk () ile bu yeterince kolaydır. Sonuçta, os.walk () tarafından sağlanan ilgili dosyaları / dizinleri gerçekten ziyaret etmek isteyip istemediğime veya onları atlayıp atmayacağıma karar vermek bana kalmıştır. Sorun şu ki, örneğin şuna benzer bir dizin ağacım varsa:
root--
|
--- dirA
|
--- dirB
|
--- uselessStuff --
|
--- moreJunk
|
--- yetMoreJunk
ve yararsızStuff'ı ve tüm alt öğelerini dışlamak istiyorum , os.walk () yine de yararsızStuff'ın tüm (potansiyel olarak binlerce) alt dizinine inecek , ki söylemeye gerek yok ki, işleri çok yavaşlatıyor. İdeal bir dünyada, os.walk () 'a artık işe yaramaz Stuff'tan daha fazla çocuk verme zahmetine girmemesini söyleyebilirdim , ama bildiğim kadarıyla bunu yapmanın bir yolu yok (var mı?).
Bir fikri olan var mı? Belki böyle bir şey sağlayan üçüncü taraf bir kitaplık vardır?
dirs[:] =?