본문 바로가기
카테고리 없음

파이썬 Keyword: bytes to string conversion, 초보자도 이해하기 쉬운 설명과 샘플코드

by 뷰티풀스택 2023. 7. 4.
반응형

바이트(Byte)를 문자열(string)로 변환하는 과정은 인코딩(Encoding)과 디코딩(Decoding)과 관련이 있습니다. 

 

일반적으로, 바이트를 문자열로 변환하려면 `decode()` 메서드를 사용해야 합니다. 이 메서드에는 바이트열을 디코딩하는 방식을 지정하는 매개변수가 있습니다.

 

예를 들어, UTF-8 인코딩 방식으로 바이트를 문자열로 변환하려면 다음과 같이 코드를 작성할 수 있습니다:

 

```python

bytes_data = b'\xed\x95\x9c\xea\xb8\x80'  # UTF-8로 인코딩된 바이트 데이터

string_data = bytes_data.decode('utf-8')  # 디코딩하여 문자열로 변환

print(string_data)  # 출력: 한글

```

 

위 코드에서 `decode('utf-8')`는 UTF-8로 인코딩된 바이트를 UTF-8 디코딩을 통해 문자열로 변환하는 역할을 합니다.

 

또 다른 옵션으로는 `str()` 함수를 사용하여 바이트를 문자열로 변환할 수도 있습니다. 이 경우, 기본적으로 UTF-8 인코딩이 사용됩니다. 하지만 문자열로 변환 중에 잘못된 바이트가 있는 경우 `UnicodeDecodeError` 예외가 발생할 수 있습니다. 따라서 `decode()` 메서드를 사용하는 것이 더 안전합니다.

 

```python

bytes_data = b'\xed\x95\x9c\xea\xb8\x80'  # UTF-8로 인코딩된 바이트 데이터

string_data = str(bytes_data, 'utf-8')  # 바이트를 문자열로 변환

print(string_data)  # 출력: 한글

```

 

자세한 정보와 다른 인코딩 방식에 대한 자세한 내용은 Python 공식 문서를 참조하시기 바랍니다.

 

Python 공식 문서: https://docs.python.org/3/library/stdtypes.html#bytes.decode

반응형

댓글