2017-11-21 12 views
0

데이터베이스에서 가져온 데이터의 유형을 binary 유형으로 변환하려고합니다. 데이터베이스에서 가져온 데이터는 목록 형식입니다. 코드의 출력은 사전리스트를 bytes_stream으로 변환

def WriteData(data): 

    jsonData = json.dumps(data) 
    binaryData = ' '.join(format(ord(letter), 'b') for letter in jsonData) 
    print(type(binaryData)) 
    filePointer = io.BytesIO(binaryData) 

입니다

: 다음은 샘플 코드입니다

<class 'str'>

+3

이것은 실제로 명확하지 않습니다. 왜 이럴 필요가 있니? 필요한 출력은 무엇입니까? 가지고있는 코드에 어떤 문제가 있습니까? –

+0

' ''.join()'은 문자열을 생성합니다. – Reti43

+0

'binaryData'는 문자열입니다. 그래서'print (type (binaryData))'가''을 출력한다는 것이 옳다. 인쇄를 기대했던 것은 무엇입니까? 그리고 지금 당신은 무엇을하려고하십니까? 텍스트 코드 포인트를 0과 1의 공백으로 구분 된 가변 길이 문자열로 변환하는 것은별로 유용하지 않습니다. –

답변

0

BytesIO 당신이 JSON 바이트 데이터를 덤프 변환 할 매개 변수로 바이트를 소요하기 때문에 내가 생각하고 . 이를 위해 encode() 메소드를 사용할 수 있습니다.

def WriteData(data): 

    jsonData = json.dumps(data) 
    binaryData = jsonData.encode() 
    print(type(binaryData)) 
    filePointer = io.BytesIO(binaryData) 
+0

감사합니다. 그것은 효과가 있었다. –

+0

해결책이 효과가 있다면 대답을 수락하십시오. – daemon24