OS.SCANDIR() - Efficient Directory Scanning
Python
#!/usr/bin/env python3
"""OS.SCANDIR() - Efficient Directory Scanning"""
import os, tempfile
temp = tempfile.gettempdir()
test_dir = os.path.join(temp, "scandir_test")
os.makedirs(test_dir, exist_ok=True)
for i in range(3):
open(os.path.join(test_dir, f"file{i}.txt"), 'w').write(f"test{i}")
os.makedirs(os.path.join(test_dir, "subdir"))
print("Using os.scandir():")
with os.scandir(test_dir) as entries:
for entry in entries:
print(f" {entry.name}:")
print(f" Is file: {entry.is_file()}")
print(f" Is dir: {entry.is_dir()}")
if entry.is_file():
print(f" Size: {entry.stat().st_size} bytes")
import shutil
shutil.rmtree(test_dir)