python3 byte_Python 3构建字节数组

I need to build a tcp frame with raw binary data, but all examples and tutorials I've found talking about bytes always involve conversion from a string, and that's not what I need.

In short, I need to build just an array of bytes:

0xA2 0x01 0x02 0x03 0x04

Please note that I come from C/C++ world.

I've tried this:

frame = b""

frame += bytes( int('0xA2',16) )

frame += bytes( int('0x01',16) )

frame += bytes( int('0x02',16) )

frame += bytes( int('0x03',16) )

frame += bytes( int('0x04',16) )

Then, throw this frame variable to send method of socket, but not working as expected as frame doesn't contain what I want...

I know this is a very basic question about Python, so if you could point me in the right direction...

解决方案>>> frame = bytearray()

>>> frame.append(0xA2)

>>> frame.append(0x01)

>>> frame.append(0x02)

>>> frame.append(0x03)

>>> frame.append(0x04)

>>> frame

bytearray(b'\xa2\x01\x02\x03\x04')

or, using your code but fixing the errors:

frame = b""

frame += b'\xA2'

frame += b'\x01'

frame += b'\x02'

frame += b'\x03'

frame += b'\x04'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值