Python基于Socket实现简单聊天功能示例

晚来风
晚来风
发布时间:2026-10-14| 5人浏览过
原创

本文介绍如何使用Python标准库socket模块快速实现一个简单的网络聊天程序。通过服务端监听与客户端连接,演示了基于TCP协议的文本消息收发流程,包含完整的服务端和客户端代码示例及运行结果分析,适合初学者学习网络编程基础。

Python Socket聊天程序实现概述

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

运行结果展示

运行结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。