我在Python 2.7中编写了一个非常简单的udp套接字连接
服务器端已启动并正在运行.
我在客户端遇到麻烦.
from socket import *
serverName = '127.0.0.1'
serverPort = 5444
counter = 1;
while counter < 55:
mySocket = socket(AF_INET,SOCK_DGRAM)
try:
mySocket.settimeout(1.0)
message = raw_input('')
mySocket.sendto(message,(serverName, serverPort))
modifiedMessage, serverAddress = mySocket.recvfrom(1024)
except mySocket.timeout:
print 'Request timed out!'
mySocket.close()
else:
print 'Server Response: '
print modifiedMessage
mySocket.close()
我收到以下错误.
除了mySocket.timeout:
AttributeError:’_socketobject’对象没有属性’timeout’
我无法理解为什么没有超时属性?!
事实上,我正在看知识分子,也没有这样的属性.
任何建议将不胜感激
解决方法:
套接字模块具有超时类.您的套接字对象mysocket(类型为socket.socket)没有超时属性.
试试这个:
except timeout:
print 'Request timed out!'
mySocket.close()
请注意,您也应该注意以这种方式使用import *.