20234211涂一涵《Python程序设计》实验三报告

20234211涂一涵 2024-04-24 23:20:43

课程:《Python程序设计》
班级: 2342
姓名: 涂一涵
学号:20234211
实验教师:王志强
实验日期:2024年4月22日
必修/选修: 公选课

## 1.实验内容

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

## 2. 实验过程及结果

(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现在本地传输;

img

(服务器)

img

(客户端)

 

(2)在程序中加入文件的打开、读取,传输的信息的加密解密操作;

img

(服务器)

img

(客户端)

img

(加密方式)

 

(3)在服务器和客户端的Host_name处,均输入服务器所在设备的ip地址,实现两台设备间的传输;并且用if和while语句实现在密钥输入错误的情况下,实现可多次输入密钥进行解密。

img

(服务器)

img

(客户端)

 

(4)运行程序,查看实验结果;

img

(服务器端)

img

(客户端)

## 3. 实验过程中遇到的问题和解决过程
- 问题1:采用readlines()函数读取的数据是以列表的形式保存在变量中的,不能进行编码;
- 问题1解决方案:用data = “”.join(message)函数将列表转化为字符串。
- 问题2:传输汉字时出现乱码;
- 问题2解决方案:采取”utf-8“进行编码。
- 问题3:服务器和客户端不能实现信息的传输,显示“由于目标计算机积极拒绝,无法链接”等错误;
- 问题3解决方案:首先,检查服务器和客户端中的ip地址是否填写正确;其次,在命令提示符中输入netstat,查看端口有没有被禁,端口有没有被占用;


## 其他(感悟、思考等)

(1)本次实验的难度较大,涉及知识点较多,在进行写代码的过程中,要主动将复杂的程序拆解成若干个小部分,逐步实现程序的运行;

(2)面对程序运行过程中的多次报错,要利用好错误提示,针对不同的错误类型,积极在网络上寻找相关错误的解决方式,实现问题的逐一击破。

## 参考资料

  • 《零基础学python》

-  [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)

-  [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)

...全文
100 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

93

社区成员

发帖
与我相关
我的任务
社区描述
Python程序设计作业
软件构建 高校 北京·丰台区
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧