尔冬士
2022-06-01 09:07
采纳率: 0%
浏览 29

python编程,udp通讯传过来十六进制数,怎么编写程序才可接收到正常数字

python编程,udp通讯,用网络调试助手向udp通讯本机发十六进制数据,但是pycharm里接收到的不是那种数字格式,求帮忙看看。
import socket

def main():
# 创建套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 绑定一个本地信息
localaddr = ("", 8081)
udp_socket.bind(localaddr)

while True:
    # 接收数据
    recv_data = udp_socket.recvfrom(1024)

    # recv_data是一个元组(接收到的数据, (发送方的IP, port))
    recv_msg = recv_data[0]  # 存储接收到的数据
    send_addr = recv_data[1]  # 存储发送方的地址
    # 打印收到的消息
    print(recv_msg.decode())
    # print("%s:%s" % (str(send_addr), recv_msg))

# 关闭
udp_socket.close()

if name == 'main':
main()

运行结果及报错内容

img

我的解答思路和尝试过的方法:加上decode('utf-8')和decode('gbk')之后会报错,说解码方式不对
我想要达到的结果:想要00 03 1A 01 这种数字

1条回答 默认 最新

相关推荐 更多相似问题