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

20244113 2024-2025-4 《Python程序设计》实验三报告

课程:《Python程序设计》
班级: 2441
姓名: 咸润杰
学号:20244113
实验教师:王志强
实验日期:2025年4月17日
必修/选修: 公选课

1. 实验内容

创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
相关实验要求如下:
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序。
(2)要求包含文件的基本操作,例如打开和读写操作。
(3)要求发送方从文件读取内容,加密后并传输;接收方收到密文并解密,保存在文件中。
(4)程序代码托管到码云。

2. 实验过程及结果

(出于安全需要,本实验报告所涉及图片中的IP地址均进行了保密处理)

(1)搭建服务器
①导入socket模块,绑定本机IP地址,使用一个端口

②监听连接,并提示相关提示。如“已接受连接”

③运用while函数,使得双方可以持续通信。通信过程当中,使用了 “utf-8” 。若通信字数多于1024,则程序终止。

④如果客户端关闭,则程序终止。

⑤最后添加水印。下图为完整的服务器程序代码。

(2)搭建客户端
①导入socket模块,输入IP地址和端口,以此可以连接到服务器。

②运用while函数,使得双方可以持续通信。通信过程当中,使用了 “utf-8” 。若通信字数多于1024,则程序终止。客户端在接收到服务器的信息之后,可以选择是否继续通信。

③客户端关闭,则程序终止。之后我又添加了水印。下图为完整的客户端程序代码。

(3)成果展示。

上图为作为服务器时的成果展示。与客户端进行了友好的交流。

上图为作为客户端时的成果展示。与服务器针对疯狂星期四的问题展开了友好的交流。

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

  • 问题1:编写客户端程序时遇到了问题。
  • 问题1解决方案:在老师的指导下,仿照老师的程序,进行了程序编写。
  • 问题2:初次运行时,双方不可以持续通信。
  • 问题2解决方案:询问同学之后,加入了 while 函数,使得双方可以持续通信。
  • 问题三:客户端与服务器无法连接。
  • 问题3解决方案:发现双方不在同一网络之下。之后,双方连接同一网络,服务器与客户端连接成功。

其他(感悟、思考等)

本实验强调同学们之间的合作。叔本华说:“单个的人是软弱无力的,就像漂流的鲁滨逊一样,只有同别人在一起,他才能完成许多事业。”在日常生活之中,我们应该多和同学们进行合作交流,一起攻克难关。
此外,本实验对于我而言,难度较大,编写一些代码时较为吃力。所以,在上课时,应当认真听讲,课下也要多加练习,不断提升自己的能力。

参考资料

posted @ 2025-04-17 17:08  Sakura-樱良  阅读(30)  评论(0)    收藏  举报