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

20233414滕妍君 2024-04-24 18:42:37

20233414 2023-2024-2 《Python程序设计》实验三报告

课程:《Python程序设计》
班级: 2334
姓名:滕妍君
学号:20233414
实验教师:王志强
实验日期:2024年4月17日
必修/选修: 公选课

1.实验内容

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

2. 实验过程及结果

(1)首先创建服务端和客户端,选择通信端口
①服务端代码

img

②客户端代码

img

③加密算法代码

img

(2)与同学连接同一局域网,进行通话,以下为实验结果

img

img

(3)加入文件操作,实现从文件读取内容,加密后并传输,接收方收到密文并解密,保存在文件中。
实验代码如下:

img

img

img

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

  • 问题1:运行加密算法代码时,程序报错,显示“No module named 'pyDes'”。
  • 问题1解决方案:在网上查找相关资料后发现是由于未安装pyDes模块导致的,安装该模块后问题解决。
  • 问题2:通信双方进行相互连接时,显示“由于目标计算机积极拒绝,无法连接”。
  • 问题2解决方案:双方关闭防火墙。
  • 问题3:关闭防火墙后双方仍无法正常连接。
  • 问题3解决方案:查询相关资料后发现,因为bind是将socket与指定IP的指定端口连接以进行监听,所以双方在通信时需连接同一个Wifi或手机热点。连接到同一局域网后成功实现通信。

其他(感悟、思考等)

通过本次实验,我了解到Socket是支持TCP/IP协议的网络通信的基本操作单元,是面向客户/服务器的模型设计的,当服务端与客户端建立连接后即可进行数据的传递。此次实验中的实验代码和用到的相关知识及原理对于我来说比较陌生,通过听老师的讲解和查询大量资料才弄懂了每一行代码所代表的含义。要想真正掌握这些操作和编写,仅靠在课上的了解还远远不够,还需要更深层次地学习和反复练习才能更好地掌握和运用。

参考资料

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

110

社区成员

发帖
与我相关
我的任务
社区描述
人生苦短,我用Python!
python3.11 高校
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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