#server: import socket from threading import Thread def func(conn): conn.send(b'hello client') ret = conn.recv(1024).decode('utf-8') print(ret) conn.close() #conn.close()放在这里是为了让每一个连接都关闭,如果放在外面就只能关闭最后一个连接。 sk = socket.socket() sk.bind(('127.0.0.1',8080)) sk.listen() while True: conn,addr = sk.accept() t = Thread(target=func,args=(conn,)) t.start() sk.close() #如果sk.close()放在func的里面,第一个连接聊完天之后就关闭了整个通信,后面的连接都无法通信,所以必须放在外面。 #client: import socket sk = socket.socket() sk.connect(('127.0.0.1',8080)) ret = sk.recv(1024).decode('utf-8') print(ret) msg = input('>>>') sk.send(msg.encode('utf-8')) sk.close()