这篇文章主要介绍了如何用python实现简单聊天功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何用python实现简单聊天功能文章都会有所收获,下面我们一起来看看吧。
服务端:
from socket import socket def main(): #创建套接字对象并指定使用哪种传输服务 socket()括号不传递参数默认是tcpipv4 server = socket() #绑定ip地址和端口(这样可以区分不同的服务) 端口可以自己指定建议使用1024以后的端口 server.bind(('10.7.152.123',5650)) # 开启监听 ----监听客户端连接到服务器 server.listen(512) #检查服务器是否已经启动 print('服务器已启动') #通过循环接收客户端的连接,并做出相应的处理(提供服务) while True: #接收客户端的连接 accpet是一个阻塞的方法 如果没有客户端连接到服务器 #这个方法就会阻塞代码不会向下执行(返回的对象是一个元祖) client , addr = server.accept() print(str(addr) + '已经成功连接到服务器.') while True: #decode对接收到的消息进行解码 print(client.recv(1024).decode('utf-8')) data = input('服务器:') #判断客户端发来的消息如果出现bey或者拜拜跳出循环 if data == 'bey' or data == '拜拜': break #encode对发送的消息进行转码 client.send(data.encode('utf-8')) #断开连接 client.close() if __name__ == '__main__': main()
客户端:
from socket import socket def main(): #创建套接字对象 client = socket() #连接服务器 client.connect(('10.7.152.123',5650)) while True: data = input('客户端:') #向服务端发送消息 client.send(data.encode('utf-8')) if data == 'Bey' or data == '拜拜': break print(client.recv(1024).decode('utf-8')) client.colse() if __name__ == '__main__': main()
运行结果: