Maison  >  Article  >  développement back-end  >  Python implémente une petite fonction de robot de discussion basée sur TCP

Python implémente une petite fonction de robot de discussion basée sur TCP

不言
不言original
2018-04-09 14:47:002276parcourir

Cet article présente principalement la fonction de Python pour implémenter un robot de discussion basé sur TCP. Je le partagerai avec vous ici. Les amis qui en ont besoin peuvent s'y référer

Cet article décrit l'exemple d'implémentation de Python. un robot chat basé sur les fonctions du robot TCP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Un code

1.

import socket
words ={'how are you?':'Fine,thank you.',
'how old are you?':'38',
'what is your name?':'Dong FuGuo',
"what's your name?":'Dong FuGuo',
'where do you work?':'SDIBT',
'bye':'Bye'}
HOST =''
PORT =50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#绑定socket
s.bind((HOST, PORT))
#开始监听
s.listen(1)
print('Listening at port:',PORT)
conn, addr = s.accept()
print('Connected by', addr)
while True:
  data = conn.recv(1024)
  data = data.decode()
  ifnot data:
break
print('Received message:', data)
conn.sendall(words.get(data,'Nothing').encode())
conn.close()

2. Programme client

import socket
HOST ='127.0.0.1'#服务端主机IP地址
PORT =50007#服务端主机端口号
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))#连接连接
while True:
  c = input('Input the content you want to send:')
  s.sendall(c.encode())#发送数据
  data = s.recv(1024)#从客户端接收数据
  data = data.decode()
  print('Received:', data)
  if c.lower()=='bye':
break
s.close()#关闭连接

Résultats de la deuxième exécution

Recommandations associées :

Méthode Python pour créer une matrice symétrique basée sur le module numpy

Méthode Python pour trouver la durée d'exécution d'un programme basée sur le module time



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn