WinError 10038尝试了一些非套接字的操作

时间:2017-07-02 00:34:59

标签: windows python-3.x sockets

我正在尝试用Python制作聊天服务器而我无法解决它。我正在使用命令python client.py localhost 9009在CMD中运行我的代码。

这是我正在使用的代码:

#chat_client.py

import sys
import socket
import select

def chat_client():
if(len(sys.argv) < 3):
    print("Usage: python chat_client.py hostname port")
    sys.exit()

host = sys.argv[1]
port = int(sys.argv[2])

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(2)

# connect to remote host
try:
    s.connect((host, port))
except:
    print("Unable to connect")
    sys.exit()

print("Connected to remote host. You can start sending messages")
sys.stdout.write("[Me] "); sys.stdout.flush()

while 1:
    socket_list = [sys.stdin, s]

    # Get the list sockets which are readable
    read_sockets, write_sockets, error_sockets = select.select(socket_list , [], [])

    for sock in read_sockets:            
        if sock == s:
            # incoming message from remote server, s
            data = sock.recv(4096)
            if not data:
                print("\nDisconnected from chat server")
                sys.exit()
            else:
                #print data
                sys.stdout.write(data)
                sys.stdout.write("[Me] "); sys.stdout.flush()     

        else:
            # user entered a message
            msg = sys.stdin.readline()
            s.send(msg)
            sys.stdout.write("[Me] "); sys.stdout.flush() 

if __name__ == "__main__":
    sys.exit(chat_client())

这是我得到的错误: 我不知道如何解决它。帮助将不胜感激! :)

[Me] Traceback (most recent call last):
File "client.py", line 54, in <module>
sys.exit(chat_client())
File "client.py", line 32, in chat_client
read_sockets, write_sockets, error_sockets = select.select(socket_list , [],
[])

0 个答案:

没有答案