import socket import threading class Send(threading.Thread): """docstring for Send""" def __init__(self, arg): threading.Thread.__init__(self) super(Send, self).__init__() self.arg = arg def run(self): continuer = True while continuer : message = input() try : self.arg.send(message.encode("Utf8")) except socket.error : continuer = False break self.arg.close() class Receive(threading.Thread): """docstring for Receive""" def __init__(self, arg): threading.Thread.__init__(self) super(Receive, self).__init__() self.arg = arg def run(self): continuer = True while continuer : try : message = self.arg.recv(1024).decode("Utf8") except socket.error : continuer = False break else : print(">>>>>>> {0}".format(message)) self.arg.close() host = 'localhost' port = 9000 mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try : mysock.connect((host, port)) except socket.error : print("La connexion au serveur est impossible.") exit() print("Connexion au serveur réussi.") continuer = True if __name__ == '__main__' : sn = Send(mysock) rv = Receive(mysock) sn.start() rv.start()