Python基于TCP实现会聊天的小机器人功能示例

yipeiwu_com5年前Python基础

本文实例讲述了Python基于TCP实现会聊天的小机器人功能。分享给大家供大家参考,具体如下:

一 代码

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、客户端程序

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()#关闭连接

二 运行结果

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python基于回溯法子集树模板实现8皇后问题

Python基于回溯法子集树模板实现8皇后问题

本文实例讲述了Python基于回溯法子集树模板实现8皇后问题。分享给大家供大家参考,具体如下: 问题 8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、...

Python操作Redis之设置key的过期时间实例代码

Expire 命令用于设置 key 的过期时间。key 过期后将不再可用。 r.set('2', '4028b2883d3f5a8b013d57228d760a93') #成功就返回...

python数据类型之间怎么转换技巧分享

python数据类型之间怎么转换技巧分享

python数据类型之间怎么转换?数据如果类型不对,在运行中有交集的话就会出现错误,那怎么让两个类型的数据变成同一个类型的呢 首先是字符串,在引号里面的内容都是字符串,包括数字...

Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例

本文实例讲述了Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能。分享给大家供大家参考,具体如下: 由于目前工作的需要,需要在IPv4和IPv6两种网络模式...

django自定义模板标签过程解析

django自定义模板标签过程解析

这篇文章主要介绍了django自定义模板标签过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码布局 自定义模板标签必须位于...