[python] probleme de comparaison entre chaine
Résolu
tsic
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
sebsauvage Messages postés 32893 Date d'inscription Statut Modérateur Dernière intervention -
sebsauvage Messages postés 32893 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
voilà mon code serveur, je veux comparer la chaine envoyer par le client par rapport à la liste l.
j'ai fait plusieurs affichages pour enfin découvrir que l'erreur c'est au niveau de la comparaison
ch==donneesRecues
la "==" ne fonctionne pas
j'utilise eric 4
Donc é c qu'il ya une autre methode pour faire cette comparaison
mercii
voilà mon code serveur, je veux comparer la chaine envoyer par le client par rapport à la liste l.
j'ai fait plusieurs affichages pour enfin découvrir que l'erreur c'est au niveau de la comparaison
ch==donneesRecues
la "==" ne fonctionne pas
j'utilise eric 4
Donc é c qu'il ya une autre methode pour faire cette comparaison
from socket import * import socket, sys, threading import SocketServer import time import locale class GestionnaireEcho(SocketServer.BaseRequestHandler): def __init__(self, request, client_address, server): self.l = [] for ligne in open('benj.txt'): for commande in ligne.split('#'): self.l.append(commande.strip()) print self.l SocketServer.BaseRequestHandler.__init__(self, request, client_address, server) def handle(self): print "la liste est:" print self.l locale.setlocale(locale.LC_ALL,'') c= time.strftime('%A %c') print "Connexion de ", self.client_address,c while True: donneesRecues = self.request.recv(8192) t=time.strftime("%H:%M:%S") print "\n C ",t, "> ", donneesRecues ch="" dr="" for ch in self.l: print "ch= ", ch print "donnees recues = ",donneesRecues if ch == donneesRecues : dr=self.l[self.l.index(ch)+1] if donneesRecues==self.l[0]: print "egalite, la reponse est: ", self.l[1] print "dr est = %s"%(dr) if len(dr)==0: msg="commande erronee" else: msg=dr self.request.send(msg) print "Deconnexion de ", self.client_address mySocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: serveur = SocketServer.ThreadingTCPServer(('127.0.0.1',84), GestionnaireEcho) except socket.error: print "La liaison du socket a l'adresse choisie a echoue." sys.exit() print "En attente..!!!!" serveur.serve_forever()
mercii
A voir également:
- Python comparer deux string
- Citizen code python avis - Accueil - Outils
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Nombre de jours entre deux dates excel - Guide
- Deux whatsapp sur un téléphone - Guide
Vraiment vous etes genial.Comment vous l'avez su? Je n'aurais jamais l'idee de penser à ça. ça a marché.
MERCIIIIIII