[파이썬] 파일의 디렉토리 내 파일 정렬

파이썬을 사용하여 파일의 디렉토리에 있는 파일들을 정렬하는 방법에 대해 알아보겠습니다.

1. 정렬 기준 선택

파일을 정렬하기 전에 먼저 어떤 기준으로 정렬할지 선택해야 합니다. 예를 들어 파일 이름, 파일 크기, 최근 수정 일자 등을 기준으로 정렬할 수 있습니다.

2. glob 모듈을 사용한 파일 목록 얻기

파일의 디렉토리 내 파일을 얻기 위해 glob 모듈을 사용합니다. 이 모듈의 glob 함수를 사용하면 특정 패턴과 일치하는 모든 파일의 경로를 얻을 수 있습니다. 아래는 *.txt 확장자를 가진 모든 파일의 경로를 얻는 예시입니다.

import glob

file_list = glob.glob('path/to/directory/*.txt')

path/to/directory는 정렬하고자 하는 파일들이 있는 디렉토리 경로로 바꿔주어야 합니다.

3. 파일 정렬하기

파일 리스트를 정렬하기 위해 sorted 함수를 사용합니다. sorted 함수에 key 매개변수를 사용하여 정렬 기준을 지정할 수 있습니다. 예를 들어 파일 이름으로 정렬하려면 다음과 같이 key 매개변수에 lambda 함수를 사용합니다.

file_list = sorted(file_list, key=lambda x: x.lower())

위 예시는 대소문자를 구분하지 않고 파일 이름을 정렬합니다. 대소문자를 구분하여 정렬하려면 key 매개변수를 제거하거나 lambda 함수를 수정하면 됩니다.

전체 코드 예시

import glob

def sort_files(directory):
    file_list = glob.glob(directory)
    file_list = sorted(file_list, key=lambda x: x.lower())
    return file_list

directory = 'path/to/directory/*.txt'
sorted_files = sort_files(directory)
print(sorted_files)

위 예시 코드는 *.txt 확장자를 가진 파일들을 파일명을 기준으로 정렬한 후 정렬된 파일 리스트를 출력합니다.

파일의 디렉토리 내 파일 정렬은 여러 유용한 기능을 제공하며, 파일을 효과적으로 관리하고 찾을 수 있도록 도와줍니다. 이러한 기능을 사용하여 파일 시스템을 효율적으로 관리할 수 있습니다.