Python ConnectionRefusedError:[WinError 10061]

Python ConnectionRefusedError:[WinError 10061],python,sockets,networking,Python,Sockets,Networking,我是python新手,我想创建一个服务器-客户机应用程序,但每次尝试连接时,我都会看到这个错误。 我尝试过改变发送和接收函数的顺序,但没有成功 msg = client_socket.recv (BUFSIZ) .decode ("utf8") OSError: [WinError 10038] An attempt was made to perform an operation on an object that is not a socket 这是密码 Client.py """

我是python新手,我想创建一个服务器-客户机应用程序,但每次尝试连接时,我都会看到这个错误。 我尝试过改变发送和接收函数的顺序,但没有成功

msg = client_socket.recv (BUFSIZ) .decode ("utf8")
OSError: [WinError 10038] An attempt was made to perform an operation on an object that is not a socket
这是密码 Client.py

    """Handles receiving of messages."""
    #client_socket.bind((HOST, PORT))
    #client_socket.connect((HOST, PORT))
    msg = client_socket.recv(BUFSIZ).decode("utf8")
    print(msg)
    client_socket.close()


def send(event=None):  # event is passed by binders.
    """Handles sending of messages."""
    client_socket.connect((HOST, PORT))
    msg = input("MSG: ")
    client_socket.send(bytes(msg, "utf8"))
    client_socket.close()

#----Now comes the sockets part----
HOST = '127.0.0.1'
PORT = 7557
if not PORT:
    PORT = 33000
else:
    PORT = int(PORT)

BUFSIZ = 1024
ADDR = (HOST, PORT)

client_socket = socket(AF_INET, SOCK_STREAM)
client_socket.connect(ADDR)

receive_thread = Thread(target=receive)
receive_thread.start()


if __name__ == '__main__':
    client_socket.close()
    receive()
    send()
    receive()

注:99%的代码来自互联网

在接收和发送信息后,不要关闭套接字

from socket import AF_INET, socket, SOCK_STREAM 
from threading import Thread
def receive() :
    """Handles receiving of messages."""
    while True :
        msg = client_socket.recv(BUFSIZ).decode("utf8")
        print(msg)


def send():
    """Handles sending of messages."""
    while True:
        msg = input("MSG: ")
        client_socket.send(bytes(msg, "utf8"))

#----Now comes the sockets part----
HOST = '127.0.0.1'
PORT = 7557
BUFSIZ = 1024
ADDR = (HOST, PORT)

client_socket = socket(AF_INET, SOCK_STREAM)
client_socket.connect(ADDR)

receive_thread = Thread(target=receive, args=() )
send_thread = Thread(target=send, args=()) 



if __name__ == '__main__':
    receive_thread.start()
    send_thread.start()
这是代码的修改版本

我自己用同样的逻辑做了一个类似的应用,看看:


因此,我应该删除发送和接收函数中的所有client_socket.connect和client_socket.close?您是如何导入套接字模型的?我仍然收到此错误文件C:/Users/xiaom/PycharmProjects/NotAoife/NotAFile.py,第74行,在send client_socket.connectHOST,PORTfrom socket import AF_INET,socket,来自threading import Thread import tkinter的SOCK_STREAM你是说这个吗?发生这个错误是因为我们重新连接到了同一个地址,我编辑了代码,它一定工作正常。我的回答有帮助吗?