我正在使用一些可以通过十六进制命令控制的硬件.我已经有一些Python代码片段用于telnet控制其他使用ASCII命令的设备.
如何发送十六进制命令?例如,我将如何修改skt.send('some ascii command\r')十六进制值,以及存储这些值的最佳数据类型是什么?
谢谢.
在Python 2中,使用字符串文字:
skt.send('\x12\r')
Run Code Online (Sandbox Code Playgroud)
在Python 3中,使用字节文字或bytes.fromhex:
skt.send(b'\x12\r')
skt.send(bytes.fromhex('12 0d'))
Run Code Online (Sandbox Code Playgroud)
在任何一种情况下,bytearray类型都可能是有用的,因为它是一个可变的(可修改的)类型,你可以用整数和字节文字构造:
skt.send(bytearray([0x02, 0x03, 0x00, 0x00, 0x05]))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17150 次 |
| 最近记录: |