import socket import time def main(): #Create a tcp server tcp_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #Multiplex tcp_server.setsockopt (socket.SOL_SOCKET, socket.SO_REUSEADDR, 1 ) #Bind tcp_server.bind (( "" , 8976 )) #Passive tcp_server.listen ( 128 ) #Set non-blocking tcp_server.setblocking( False ) #Client list clients = list () while True: time.sleep(1) try: client, addr = tcp_server.accept() print(client) client.setblocking( False ) #If there is a client, put it in clients.append(client) except Exception as e: print ( "------- no client ------" ) #List loop for client_new in clients: try: data = client_new.recv( 1024 ).decode() if data: #with data print (data) else : #close the client client_new.close () #close the client clients.remove(client_new) #loop to delete except Exception as e : print ( "------ No data -----" ) tcp_server.close() if __name__ == '__main__': main()