当前位置 博文首页 > python实现简单聊天功能

    python实现简单聊天功能

    作者:Li-boss 时间:2021-08-02 18:12

    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()

    运行结果:

    jsjbwy
    下一篇:没有了