2011-10-16 48 views

Trả lời

41
import os.path 
dirs = [d for d in os.listdir('Tools') if os.path.isdir(os.path.join('Tools', d))] 
+1

Hoặc làm cho đó là một gen expr! –

+5

Hoặc 'next (os.walk ('Tools')) [1]'. – eryksun

+0

Những cách đó cũng sẽ hoạt động! –

16

Để in chỉ các thư mục

print os.walk(DIR_PATH).next()[1] 

Để in chỉ các tập tin

print os.walk(DIR_PATH).next()[2] 
+0

Tôi nhận được AttributeError: đối tượng 'máy phát điện' không có thuộc tính 'next' – sparrow

+0

Hoạt động hoàn hảo cho tôi. (Python 2.7, Ubuntu 16, Anaconda env) – rkmalaiya

+3

Python 3 (cho thư mục): in (tiếp theo (os.walk (DIR_PATH)) [1]) –

3

Một phương pháp:

dirs = [entry.path for entry in os.scandir('Tools') if entry.is_dir()] 
Các vấn đề liên quan