20193126韩浩2012-2025《Python程序设计》实验三报告
20193126韩浩《Python程序设计》实验三报告
课程:《Python程序设计》
班级: 2342
姓名: 韩浩
学号 :20193126
实验教师:王志强
实验日期:2025年4月20日
必修/选修: 公选课
1.实验内容
创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;
(2)要求包含文件的基本操作,例如打开和读写操作。
(3)要求发送方从文件读取内容,加密后并传输;接收方收到密文并解密,保存在文件中。
2. 实验过程及结果
TCP服务器端:
(1)创建套接字,绑定套接字到IP与端口
(2)开始监听连接
(3)进入循环,不断接受客户端的连接请求
(4)接收传来的数据,并发送给对方数据
(5)传输完毕后,关闭套接字
TCP客户端:
(1)创建套接字,连接远端地址
(2)连接后发送数据和接收数据
(3)传输完毕后,关闭套接字
下列是图片展示
服务器端:

客户端:

运行效果图:
服务器端:

客户端:

经过运行,我与余家欢成功建立了联系,互相进行了问候,以下是效果图

3.实验过程中遇到的问题和解决过程:
问题1:写完代码后,运行过程中出现错误
问题1解决方案:根据报错提示的问题进行修改,发现将encode和decode的意思弄反了,改正后可正常运行
问题2:运行时因为服务端和客户端的顺序错误而报错
问题2解决方案:在运行时需要先启动服务器,再启动客户端。无论是服务器端还是客户端的程序,在运行是时都需要带上两个参数,代表是服务器端监听套接字绑定的IP地址和端口
其他(感悟、思考等):
通过Socket套接字创建客户端和服务端进行沟通,涉及到两台电脑之间的配合。在编写代码的过程中,不可避免地会出现很多错误,这时不要急躁,要沉下心来,根据提示找到自己代码中的问题,不断尝试,在一次次错误中吸取经验,提高自己的能力。
在创建服务器端和客户端的过程中,我想到了现在的聊天软件,对其运行的方式产生了好奇,虽然自己制作的只是很简单的代码,但是让我了解了python的魅力与神奇。
参考资料
《Java程序设计与数据结构教程(第二版)》
《Java程序设计与数据结构教程(第二版)》学习指导**
浙公网安备 33010602011771号