2017-11-28 1 views
-1
파이썬 파이썬 3의 정수의리스트로 바이트 다음과 같은 배열을 변환하는 방법은 무엇

:Python-3에서 바이트를 정수리스트로 나누는 방법은 무엇입니까?

Input: b'34\n44\n-28\n-63\n22\n' 

Desired output: [34, 44, -28, -63, 22] 
+0

input.decode()의 x에 대한 int [x] split ('\ n')]'? – pstatix

+0

그래서 공백으로 나누고있는 중입니까? –

+0

다른 방법으로'list (map (int, input.decode(). split ('\ n')))', 그러나 목록의 이해력은 약간 빨라야하며 IMHO는 _pythonic_입니다. – pstatix

답변

3

그냥 일반 문자열에서와 같은 방법을 사용하여가. int() 분열 및지도 : bytesbytes.split() 포함 동일한 방법 (많이 가지고 있기 때문에

[int(v) for v in bytesvalue.split()] 

이 작동하고, int() typestr 값을 받아 bytes 값 같은 방식으로 받아들

If x is not a number or if base is given, then x must be a string, bytes , or bytearray instance representing an integer literal in radix base.

데모 :

>>> bytesvalue = b'34\n44\n-28\n-63\n22\n' 
>>> bytesvalue.split() 
[b'34', b'44', b'-28', b'-63', b'22'] 
>>> [int(v) for v in bytesvalue.split()] 
[34, 44, -28, -63, 22] 
관련 문제