20252334 实验三《Python程序设计》实验报告

学号 2025-2026-2 《Python程序设计》实验三报告

课程:《Python程序设计》
班级: 2523
姓名: 常嘉泽
学号:20252334
实验教师:王志强
实验日期:2026年4月27日
必修/选修: 公选课

1.实验内容

创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。

2. 实验过程及结果

客户端:

image

服务端:

image

添加并推送:

image

仓库:

image
image

LLM

关键代码的功能和使用方法:

功能:

1.socket:建立网络连接,实现两台电脑通信。
2.tkinter:创建图形窗口、输入框、发送按钮。
3.scrolledtext:显示聊天记录,自动滚动。
4.threading:后台收消息,界面不卡顿。

实验说明:

本程序基于 Python 开发,采用Socket 网络编程实现局域网通信,搭配Tkinter 图形界面提升交互体验,支持两台设备实时收发消息。程序分为服务端与客户端,通过 IP 地址和端口建立连接;使用多线程处理消息收发,避免界面卡顿,保证通信流畅。界面简洁易用,包含消息显示区、输入框和发送按钮,操作便捷。程序可实现稳定的双人实时聊天,具备基础通信功能,结构清晰、实用性强。

优点:

1.零依赖,开箱即用。
2.图形界面美观易用,适合展示。
3.多线程设计,聊天流畅不卡顿。
4.代码简洁规范,适合学习与课程设计。
5.支持局域网双人实时聊天。

结果

image

仓库:

image
image

3. 实验过程中遇到的问题和解决过程

  • 问题1:IP 地址设置错误,导致无法连接
  • 问题1解决方案:
    1.查看服务端真实 IP:在服务端电脑的 CMD 中输入 ipconfig,找到无线局域网适配器 WLAN下的 IPv4 地址。
    2.修改服务端代码:将 HOST 改为你查到的这个真实局域网 IP(例如 192.168.43.100)。
    3.修改客户端代码:将客户端的 HOST 改为服务端的那个真实 IP。
    4.关键验证:双方 IP 必须在同一网段(例如都是 192.168.43.x)。
  • 问题2:界面无响应或消息收发不同步
  • 问题2解决方案:
    1.引入多线程:必须将 ** 接收消息(recv_loop)** 放在独立的后台线程中运行,让主线程专门负责 GUI 界面的交互。
    2.分离模块:确保网络连接、消息收发逻辑是独立的函数,不阻塞 UI 主线程。
    3.测试验证:分别测试发送功能和接收功能,确认聊天窗口可以同时滚动显示双方消息,窗口不再卡顿。

其他(感悟、思考等)

通过本次实验,我切实将理论知识与实践相结合,加深了对相关专业知识的理解与运用。实操过程中,我遇到诸多问题,在不断排查、调试与改正的过程中,锻炼了独立思考和问题解决能力。同时也认识到自身知识掌握的不足,明白了严谨细致的重要性。今后我会查漏补缺,端正学习态度,多动手实践,积累实操经验,不断提升专业素养与综合实践能力。

参考资料

posted @ 2026-04-27 21:28  Victory~  阅读(17)  评论(3)    收藏  举报