s.bind(address) while 1: data,addr=s.recvfrom(2048) if not data: break print("got data from",addr) print(data.decode()) replydata = input("reply:") s.sendto(replydata.encode("utf-8"),readdr) s.close()
服务端与客户端通信截图:
客户端
服务端
注意点:
1、如何出现打印的字符窜有b‘xxxxx’,如何去掉b?
直接decode()一下;
2、如果出现
Traceback (most recent call last): File "C:/Users/vinsuan/PycharmProjects/untitled1/clientTest.py", line 6, in <module> s.bind(readdr) OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
可以借鉴参考。。。。。
案例:
客户端
服务端
服务端与客户端通信截图:
客户端
服务端
注意点:
1、如何出现打印的字符窜有b‘xxxxx’,如何去掉b?
直接decode()一下;
2、如果出现
Traceback (most recent call last):
File "C:/Users/vinsuan/PycharmProjects/untitled1/clientTest.py", line 6, in <module>
s.bind(readdr)
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
这是因为你之前运行的进程没有真正关闭,可以到任务管理器中去杀死名为“python”的进程
3、如果出现拒绝连接,可以先尝试ping一下目标主机?如果出现超时,很可能是因为两台主机防火墙的原因,暂时关闭防火墙就行