Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 尝试从UDP套接字读取时出错_Python 3.x_Sockets_Udp_Python 3.4 - Fatal编程技术网

Python 3.x 尝试从UDP套接字读取时出错

Python 3.x 尝试从UDP套接字读取时出错,python-3.x,sockets,udp,python-3.4,Python 3.x,Sockets,Udp,Python 3.4,我创建了一个UDP套接字,并将数据发送到一个未侦听的地址。下次我尝试接收数据时,它失败,出现错误[WinError 10054]远程主机强制关闭了现有连接。例如,此代码将在最后一行出错。为什么以及如何修复它 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.sendto(bytes("A", 'utf-8'), ("127.0.0.1", 5000)) s.recvfrom(128) 我创建了一个UDP套接字,并将数据发送到一个未侦听

我创建了一个UDP套接字,并将数据发送到一个未侦听的地址。下次我尝试接收数据时,它失败,出现错误
[WinError 10054]远程主机强制关闭了现有连接。例如,此代码将在最后一行出错。为什么以及如何修复它

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(bytes("A", 'utf-8'), ("127.0.0.1", 5000))
s.recvfrom(128)
我创建了一个UDP套接字,并将数据发送到一个未侦听的地址

答案在问题中。只需确保有一个服务器端逻辑将数据发送回您即可。
否则,操作系统将向您的应用程序发回一条ICMP消息,说明该端口上没有任何侦听内容,这将触发您正在报告的[WinError 10054]。顺便说一句,UDP本质上是一种无连接协议,错误消息不可能准确。

修复它?您是否考虑过发送到正在侦听的地址?你造成了一个错误,你得到了一个错误。要修什么?