os.listdir(path) trả về list tên file/thư mục trong path (không bao gồm . và ..).
Ví dụ
import os
print(os.listdir('.'))
# ['DLLs', 'Doc', 'etc', 'include', 'Lib', 'libs', 'LICENSE.txt', ...]
Chỉ lấy file (bỏ thư mục)
files = [f for f in os.listdir('.') if os.path.isfile(os.path.join('.', f))]
print(files)
# ['LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'w9xpopen.exe']
Chỉ lấy thư mục
dirs = [d for d in os.listdir('.') if os.path.isdir(os.path.join('.', d))]
pathlib (Python 3.4+) — hiện đại hơn
from pathlib import Path
p = Path('.')
list(p.iterdir()) # tất cả
[f for f in p.iterdir() if f.is_file()] # chỉ file
[d for d in p.iterdir() if d.is_dir()] # chỉ thư mục
[p.name for p in Path('.').glob('*.py')] # glob pattern