20244212 2024-2025-2 《Python程序设计》实验三报告
20244212 2024-2025-2 《Python程序设计》实验三报告
课程:《Python程序设计》
班级: 2442
姓名: 喻浩川
学号:20244212
实验教师:王志强
实验日期:2025年4月20日
必修/选修: 公选课
1.实验内容
创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
2. 实验过程及结果
实验要求
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;
(2)要求包含文件的基本操作,例如打开和读写操作。
(3)要求发送方从文件读取内容,加密后并传输;接收方收到密文并解密,保存在文件中。
(4)程序代码托管到码云。
实验过程
(1)构建客户端。先导入socket函数并创建一个基于 IPv4 协议的 TCP 套接字。
(2)绑定地址和端口:将套接字绑定到地址192.168.31.233的7777端口,然后再进行代码构建,使服务器程序可以接受客户端的链接,接受链接。
(3)利用“while”构建循环,使得服务器能够连续不断地接受客户端的连接请求,并且根据客户端的需求做出不同的回应。
(4)在传输完毕后,关闭套接字,结束连接。
(5)完整程序运行过程。
(6)服务端
实验结果
成功实现服务端与客户端的交流
3. 实验过程中遇到的问题和解决过程
(1)客户端始终无法连接到服务器
解决方案:在老师和同学的检查下发现双方不处于同一个局域网下,并且ip地址填写错误
(2)代码运行错误
解决方案:通过PC进行检查,进行多次调试后,发现代码编写中存在问题,对细节进行修正后成功运行。
其他(感悟、思考等)
在Python的学习中要持续跟进老师的讲解,尤其是要注意老师在课堂上讲授的易错易混的,这有助于我们加深对 Socket 编程的原理有清晰的理解,从而更好的完成创建服务端和客户端的任务。同时端口的选择、套接字类型的设定以及连接的建立等细节问题,仍需小心谨慎地处理,每一次的细节都事关成败。比如我就发现双方不处于同一个局域网下而导致始终联系不上。通过学习本次实验,有助于我们加深对网络连接、信息传递等方面的知识的理解,同时对我们Python的学习也有很大的好处。