在Python-3中将以下字节数组转换为整数列表的pythonic方法是什么:
Input: b'34\n44\n-28\n-63\n22\n'
Desired output: [34, 44, -28, -63, 22]
答案 0 :(得分:3)
只需使用与常规字符串相同的方法即可。拆分并映射到int()
:
[int(v) for v in bytesvalue.split()]
这是有效的,因为bytes
有许多相同的方法(包括bytes.split()
,int()
type接受bytes
值与接受str
值的方式相同:
如果 x 不是数字或 base ,则 x 必须是字符串
bytes
或bytearray
实例,表示基数 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]