os 모듈의 scandir 메서드
scandir 메서드는 폴더에 있는 파일과
하위 폴더를 순회합니다.
메서드의 매개변수에 폴더 경로를 지정합니다. 메서드는
os.DirEntry 객체를 반환합니다.
구문
import os
os.scandir(디렉터리 경로)
예제
우리 디렉터리의 구조를 알아봅시다:
import os
print(os.scandir('dir'))
코드를 실행한 결과로
os.DirEntry 객체를 얻습니다:
<nt.ScandirIterator object at 0x000001478707FF00>
예제
이제 얻은 객체를 for 루프로 순회해 보겠습니다.
시스템 리소스를 해제하기 위해,
루프가 끝난 후에는 scandir 메서드를 사용하여
순회를 닫아야 합니다:
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
수행된 코드 결과:
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
예제
또한 얻은 객체에 name 속성을 적용하여
파일 이름만 출력할 수 있습니다:
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
수행된 코드 결과:
dir1
file1.txt
file2.txt