出於某種原因,我無法將選擇套接字與我的套接字字典匹配。下面的代碼創建一個套接字字典(這是),然後當有人連接接受(它沒有)。它發現的'在「L」,但後來無法socket.error: [Errno 22] Invalid argument
Python插座字典與選擇
listening = {}
L = []
for link in links:
try:
# listening
listening[link] = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
listening[link].bind((host, routers[routername].baseport+links[link].locallink))
listening[link].listen(backlog)
# append routes and listen-list
L.append(listening[link])
except socket.error, (value,message):
print "Could not open socket: " + message
sys.exit(1)
# run loop
input = L
running = 1
while running:
inputready,outputready,exceptready = select.select(input,[],[], 0)
# Sockets loop
for s in inputready:
if s in L:
# handle the server socket
client, address = s.accept()
input.append(client)
你的入門款有混淆了我......你能澄清一下嗎? – Nate
我很想知道,哪一部分具體還是你的意思是整個事情? –
我無法解析第二個和第三個句子。 – Nate