[python] 데이터 디코딩(Decoding) 방법

데이터 디코딩(Decoding)은 인코딩된 데이터를 원래의 형식으로 변환하는 과정입니다. Python에서는 다양한 디코딩 방법을 제공하고 있으며, 이를 사용하여 데이터를 디코딩할 수 있습니다.

1. 문자열 디코딩

문자열을 디코딩하기 위해서는 decode() 메서드를 사용합니다. 이 메서드는 문자열 객체에 대해 호출되며, 원하는 인코딩 방식을 파라미터로 전달합니다. 다음은 UTF-8로 인코딩된 문자열을 디코딩하는 예시입니다.

encoded_string = b'\xec\xa0\x80\xec\x9a\xb8\xeb\xa5\xbc \xeb\xb2\x84\xea\xb5\xbc\xed\x95\x98\xeb\x8a\x94 \xeb\xac\xb8\xec\x9e\xac\xec\x9d\xb8 \xea\xb0\x9c\xeb\xb0\x9c\xed\x95\x98\xea\xb8\xb0'
decoded_string = encoded_string.decode('utf-8')
print(decoded_string)

출력 결과는 다음과 같습니다.

저를 버굴하는 문재인 개발하기

2. 파일 디코딩

파일을 디코딩하기 위해서는 open() 함수의 encoding 파라미터를 사용합니다. 인코딩 방식을 설정하여 파일을 열고, 데이터를 디코딩할 수 있습니다. 다음은 UTF-8로 인코딩된 텍스트 파일을 디코딩하는 예시입니다.

with open('encoded_file.txt', 'r', encoding='utf-8') as file:
    decoded_data = file.read()
print(decoded_data)

3. Base64 디코딩

Base64로 인코딩된 데이터를 디코딩하기 위해서는 base64 모듈을 사용합니다. b64decode() 함수를 사용하여 디코딩할 수 있습니다. 다음은 Base64로 인코딩된 문자열을 디코딩하는 예시입니다.

import base64

encoded_string = 'SGVsbG8gd29ybGQ='
decoded_string = base64.b64decode(encoded_string).decode('utf-8')
print(decoded_string)

출력 결과는 다음과 같습니다.

Hello world

참고 자료