Python套接字超时错误

nej*_*nej 4 python attributes timeout attributeerror

我在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()
Run Code Online (Sandbox Code Playgroud)

我收到以下错误.除了mySocket.timeout:AttributeError:'_ socketocket'对象没有属性'timeout'

我无法理解为什么没有超时属性?!

事实上,我正在看知识分子,也没有这样的属性.

任何建议将不胜感激

Joh*_*yon 5

socket模块有一个timeout类.您的套接字对象mysocket(类型socket.socket)没有timeout属性.

试试这个:

except timeout:
    print 'Request timed out!'
    mySocket.close()
Run Code Online (Sandbox Code Playgroud)

请注意,您也应该小心使用import *这种方式.