본문 바로가기
Python/Python FAQ

Python 바이트를 문자열로 변환하세요., Convert bytes to a string

by 베타코드 2023. 5. 5.
반응형

질문


외부 프로그램의 표준 출력을 bytes 객체로 캡처했습니다:

>>> from subprocess import *
>>> command_stdout = Popen(['ls', '-l'], stdout=PIPE).communicate()[0]
>>>
>>> command_stdout
b'total 0\n-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file1\n-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file2\n'

그것을 일반적인 Python 문자열로 변환하여 다음과 같이 출력하려고합니다:

>>> print(command_stdout)
-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file1
-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file2

Python 3에서 bytes 객체를 str로 어떻게 변환합니까?


반대로 변환하는 방법은 Python 3에서 문자열을 바이트로 변환하는 가장 좋은 방법은 무엇인가요?를 참조하십시오.


답변


bytes 객체를 디코딩하여 문자열을 생성합니다:

>>> b"abcde".decode("utf-8") 
'abcde'

위의 예제는 일반적인 인코딩 방식인 UTF-8을 가정합니다. 그러나 실제 데이터가 사용하는 인코딩 방식을 사용해야 합니다!

반응형

댓글