Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 사전의 byteString 키:값 쌍을 문자열로 변환

<시간/>

파이썬의 바이트 문자열은 앞에 문자 b가 붙은 문자열입니다. 이 기사에서는 바이트코드 문자열이 있는 사전을 문자열만 나타내는 일반 사전으로 변환하는 방법을 볼 것입니다.

디코드 및 ASCII 사용

Python 문자열 메서드 decode()는 인코딩을 위해 등록된 코덱을 사용하여 문자열을 디코딩합니다. 기본 문자열 인코딩이 기본값입니다. 디코드 함수의 매개변수로 ASCII를 제공하여 바이트코드 값을 일반 ASCI 값으로 변환하는 데 사용합니다.

bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'}
print(bstring)
# Use decode
stringA = {y.decode('ascii'): bstring.get(y).decode('ascii') for y in bstring.keys()}
# Result
print(stringA)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'}
{u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}

디코드 및 utf-8 사용

위와 유사한 접근 방식을 취할 수 있지만 이번에는 utf-8을 사용합니다. 키 값 쌍에 대한 for 루프를 설계하고 각 쌍을 반복하여 값을 utf-8 표현으로 변환합니다.

bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'}
print(bstring)
# Use decode
stringA = {}
for key, value in bstring.items():
   stringA[key.decode("utf-8")] = value.decode("utf-8")
# Result
print(stringA)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'}
{u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}