Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 텍스트 파일로 딕셔너리(사전) 만드는 방법

텍스트 파일을 파이썬 딕셔너리로 변환하기

텍스트 파일에 저장된 데이터를 파이썬 프로그램에서 활용하려면 이를 딕셔너리(dictionary) 형태로 변환하는 것이 매우 유용합니다. 예를 들어, 다음과 같은 내용의 텍스트 파일(dict.txt)이 있다고 가정해 보겠습니다.

1 aaa
2 bbb
3 ccc

각 줄은 숫자와 문자열이 공백으로 구분되어 있습니다. 이제 이 파일을 읽어서 숫자를 키(key)로, 문자열을 값(value)으로 갖는 딕셔너리를 만들어 보겠습니다.

기본 구현 코드

아래 파이썬 코드는 open() 함수로 파일을 열고, 파일을 한 줄씩 읽으면서 각 줄을 공백 문자 기준으로 분리합니다. 분리된 첫 번째 요소는 키로, 두 번째 요소는 값으로 사용됩니다.

d = {}
with open("dict.txt") as f:
    for line in f:
        (key, val) = line.split()
        d[int(key)] = val

print(d)

코드 동작 원리

with open("dict.txt") as f: 구문은 파일을 자동으로 열고 작업이 끝나면 닫아주므로 안전합니다. line.split()은 기본적으로 공백을 기준으로 문자열을 나누어 리스트를 반환하며, 언패킹(unpacking)을 통해 key와 val에 각각 할당됩니다. 여기서 int(key)를 사용해 키를 정수형으로 변환한 점에 주목하세요. 변환하지 않으면 키가 문자열 '1', '2', '3'으로 저장됩니다.

실행 결과

위 코드를 실행하면 파일의 내용이 딕셔너리 형태로 출력됩니다.

{1: 'aaa', 2: 'bbb', 3: 'ccc'}

이처럼 간단한 몇 줄의 코드만으로 텍스트 파일의 데이터를 손쉽게 딕셔너리로 변환할 수 있으며, 이후 프로그램에서 효율적으로 조회하고 활용할 수 있습니다.