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

学号 20244119 《Python程序设计》实验x报告

课程:《Python程序设计》
班级: 2441
姓名: 霍彬斌
学号:20244119
实验教师:王志强
实验日期:2020年4月17日
必修/选修: 公选课

1.实验内容

创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
相关实验要求如下:
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序。
(2)要求包含文件的基本操作,例如打开和读写操作。

2. 实验过程及结果

(1)构建服务端,导入socket函数套接字,编写第二行“client……”,使客户端连接到服务器。

(2)输入本机IP地址,构建端口。编写程序使客户端可以通过IP地址和端口与服务器完成对接。

(3)使用“while”循环结构,使服务端能够连续接受客户端的连接请求。

(4)编写程序,使服务端在接收数据后可以发送数据。

(5)编写“close”程序,输入“关闭服务器”,结束连接。

(6)以相同方式构建“客户端”,同样使用套接字,while循环结构

(7)检查两段代码整体,确认无误

(8)关闭两台电脑防火墙,以确保连接顺利。

(9)启动服务端,启动客户端

(10)在客户端第一次输入

(11)在服务端接受并回复

(12)客户端选择yes,连接继续;选择no,运行结束,实验成功。

以下为我分别作为客户端和实验端的完整运行截图。
第一次我作为客户端,我接受搭档电脑ipv4的地址,并输入他绑定的端口4119
客户端:

在客户端顺利运行后,我们调换角色,由我来担任服务端,此时调取我的电脑ipv4地址并设置端口7777,绑定链接。
服务端:

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

  • 问题1:在独立编写接收程序时遇到困难,实验难以进行下去。
  • 问题1解决方案:通过向老师提问,向优秀同学借鉴,以及结合老师讲授的内容和课本知识,尝试自己写出代码。
  • 问题2:两台电脑,在符合任何条件的情况下,仍然难以完成链接。总是出现“一边积极拒绝”的情况。
  • 问题2解决方案:在请教的过程中,了解到了防火墙对于这项实验存在一定阻碍,在关闭两台电脑防火墙后,成功连接。

其他(感悟、思考等)

感悟一:这次实验相较于前两次,对独立创新的要求明显提高,之前的只要照做就可以完成,这次必须自己独立完成,这也是我遇到的主要困难之一,但经过数次向优秀同学请教,以及自己独立完成,我顺利完成了接收端的编写任务。

感悟二:学习时必须要克服畏难心理。实验刚开始时其实我并不打算立刻做,但看着周围的同学都在做,我也就加入了其中。但随着编写内容越来越多,我逐渐了解了这次编写的主要框架。当我也可以解答别人的问题时,我充满了自豪感,这使得我当晚顺利完成了任务。

启示一:我认为以后最好都是趁热打铁,当时状态很好,但过了两天后再做这个实验,效果就明显没有当时好。

启示二:我认为在做实验的过程中最重要的就是多问,在不断的问别人的过程中自己的能力可以得到快速提升,虽然这有可能降低自己的主观能动性,但是这毕竟是一门我不太擅长的学科,所以还是有必要虚心向他人学习的。同时,综合三个实验来看,把知识穿在一起是有必要的,只有不断的温故知新,才能把所有的知识都彻底联系起来,彻底的掌握。

posted @ 2025-04-17 22:28  a5w4  阅读(12)  评论(0)    收藏  举报