j'ai créer un programme client en réseau avec un autre programme serveur ( en socket). Et dans mon programme client je demande à l'utilisateur de saisir son nom et son prénom (prénom=input("Saisissez votre prénom:")) , je voulais savoir comment je pouvais recevoir cet information sur mon programme serveur , donc avoir accès au contenu de la variable prénom.
Tout dépend de comment tu veux que tes programmes communiquent ... As-tu un serveur sur lequel tu veux faire des requètes HTTP, veux-tu utiliser des sockets, un serveur WebSocket ? (Je pourrais continuer encore longtemps).
Si c'est en socket, logiquement, vous recevrez des bytes. Ce qui veux dire, que vous devez reconstituez ce que vous recevez... (Avec decode() et encode())
Dans le sens, que vous recevrez pas une variable prénom, mais uniquement les réponses.
Il faut donc, trouver une logique, pour envoyez les réponses dans le client. Ensuite, vous utilisez cette même logique, pour retrouver les réponses dans le serveur.
Dans cet exemple client, je sépare le prénom et le nom, par un espace...
## Client:
prenom = input("blabla")
nom = input("blabla")
a_envoyez = prenom + " " + nom ## On met un espace
sock.send(a_envoyez.encode())
Dans cet exemple serveur, je récupère le prénom et le nom, en séparant ce que je reçoit, par un espace...
## Server:
recv = sock.recv(1024)
recevoir = recv.decode()
prenom, nom = recevoir.split() ## Séparez tous les espaces..
Ce n'est pas cohérent, ton message d'erreur parle de la variable sock, hors dans ton code présenté, cette variable synonyme serait connexion_avec_serveur. Montre le code modifié en conséquence des remarques d'entwanne.
AbcSxyZ a écrit:
> Si seulement python savait ce qu'il devait faire !
Python sait très bien ce qu'il doit faire, encore faut-il le lui demander correctement.
Ici le problème est que utilises Python 2, passe à la version 3.
>>> python.sauvetage_ours_polaire()
Traceback (most recent call last):
File "<pyshell#108>", line 1, in <module>
python.sauvetage_ours_polaire()
NameError: name 'python' is not defined
Je persiste. MarwanTragha je voulais te montrer qu'il ne connait pas ta socket de façon naturel.
P.S.: Perdu entwanne. Sans print perso je sais pas quel version ça peut être (raw_input, ou quelques petits noms de modules mais sinon à la rigueur)
Pour réussir dans la vie, je te conseille de te piquer à l'héro jusqu'à en crever.
AbcSxyZ a écrit:
> P.S.: Perdu entwanne. Sans print perso je sais pas quel version ça peut être (raw_input, ou quelques petits noms de modules mais sinon à la rigueur)
Je vous ai confondus, MarwanTragha et toi (c'est ça de ne pas avoir d'image de profil).
Comme le code présenté plus haut réalisait un input("blabla"), j'ai effectivement pensé à un input que Python chercherait à interpréter, donc à Python 2.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique