20201316 2020-2021-2 《Python程序设计》实验三报告

20201316 2020-2021-2 《Python程序设计》实验三报告

课程:《Python程序设计》 班级: 2013 姓名: 陈鑫 学号:20201316 实验教师:王志强 实验日期:2021年5月24日 必修/选修: 公选课

1.实验内容

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

 

(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;

(2)要求包含文件的基本操作,例如打开和读写操作。

(3)要求发送方从文件读取内容,加密后并传输;接收方收到密文并解密,保存在文件中。

(4)程序代码托管到码云。

 

2. 实验过程及结果

2.1

首先加载socket模块(python文件名称不能命名socket,一开始一个命名了socket,一个命名socket1,然后模块都显示无法调用),创建服务端与客户端,都连接本地的ip地址和端口,开始监听连接。

2.2

接受传来的数据,并发送给对方数据,将客户端传来的文件接受并创建一个新的文件,将对方文件拷贝到新的文件中。运行前:

 

2.3

传输完毕,关闭套接字

2.4

代码托管到码云,链接:https://gitee.com/cx20201316/pythonstart1

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

问题1:

问题1解决方案:使用bytes(“ ”,encoding=‘utf-8’)进行强转

问题2:端口数字为异常参数,运行失败,如图

 

s.bind函数内只能有一个参数,所以需要用括号将ip地址和端口数字包含

 

感悟:之前从来没接触过,理解上还是有很多问题,感觉有些概念有点抽象。但是学点新东西还是挺有意思的。

posted @ 2021-05-24 23:09  20201316  阅读(85)  评论(0编辑  收藏  举报