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

20254224 2025-2026-2 《Python程序设计》实验3报告
课程:《Python程序设计》
班级: 2542
姓名: 张祖贤
学号:20254224
实验教师:王志强
实验日期:2026年4月28日
必修/选修:专选课

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

(2)实验要求
注意事项:每人必须做一次客户端和一次服务端,且要和队友(标注学号姓名)互相通信。

要求1:
①创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;
②要求发送方输入内容,并传输;接收方收到信息并显示。

要求2:使用LLM生成一个带图形界面的程序
①分析关键代码的功能和使用方法
②分析生成程序的优点
③给出运行过程和结果截图

注:在华为ECS服务器(OpenOuler系统)和物理机(Windows/Linux系统)上使用VIM、PDB、IDLE、Pycharm等工具编程实现。

  1. 实验过程及结果
    (1)按照课上程序进行试验:
    ①修改自己的IP地址:

屏幕截图 2026-04-28 210030

②10.152.224.13(20254213牟文毅)作为客户端,与10.152.224.21(20254221张祖贤)互相通讯

屏幕截图 2026-04-28 215228
③(20254221张祖贤)作为服务端,修改IP地址为10.152.224.13,和张祖贤成功通讯

屏幕截图 2026-04-28 215544


2)使用LLM生成一个带图形界面的程序:
①给出运行过程和结果截图:
程序:6a1bebd7dc6c9d6eb7467e36cb7c389a

 ![1306a07bd59c29f570beafb7e01f8008](https://img2024.cnblogs.com/blog/3778818/202604/3778818-20260429150207507-848177732.png)

②分析关键代码的功能和使用方法:
功能:
这个程序可以一键切换服务端和客户端模式。
可以自定义IP地址和连接端口。
实时可以收发消息,显示聊天记录。
支持中文消息发送。
启动/停止指令不会卡死页面。
可以正常展示聊天页面。

使用方法:
程序运行:将完整代码复制保存为 .py 格式文件。
通信双方分别查看自身电脑的局域网IPv4地址。
一方选择服务端模式,在IP输入框填写自身局域网IPv4地址,端口填写8888(可自定义),点击【启动】按钮,开启端口监听。
另一方选择客户端模式,在IP输入框填写服务端的局域网IPv4地址,端口填写与服务端一致的号码,点击【启动】按钮,发起连接。
连接成功后,在底部消息输入框编辑文字,点击【发送】按钮,即可实现双向消息通信。
角色互换操作:需切换通信角色时,双方均点击【断开】按钮关闭当前连接,重新选择模式、填写对应IP,重复上述连接步骤即可完成角色互换。
程序关闭:通信结束后,先点击【断开】按钮安全关闭网络连接,再关闭程序窗口,避免连接异常残留。

③分析生成程序的优点:
操作很简单,按钮,输入框都很清晰,可以快速上手。
很稳定,不会突然中断或者报错。
画面简洁,比自己制作的美观。
运行流畅没有卡顿,操作比较流畅。

  1. 实验过程中遇到的问题和解决过程
    问题1:在连接过程中,始终显示连接错误。
    问题1解决方案:关闭防火墙,修改IP

    其他(感悟、思考等)
    今天主要进行了Socket的操作实验,最开始更改IP以及与同学成功连接的过程十分困难。出现了很多问题,如IP地址更改错误,防火墙未能及时关闭,服务端客户端IP不一样等。在询问老师同学之后,得到了有效解决,成功运行了程序,完成了第一个实验。第二个相对简单,直接拍摄照片让豆包生成即可。只能说非常难受,非常累,手动修改IP后还不能上网,但也算是学到的东西

参考资料
《Python程序设计》

GIT:https://github.com/Danteeeeeeeeeeeeeeeee/DANTE3

posted @ 2026-04-29 15:07  DANTE2026  阅读(8)  评论(0)    收藏  举报