20234124 陈远博 实验三《Pthyon程序设计》实验报告

20234124陈远博 2024-04-22 21:45:37


 # 学号 20234124 《Python程序设计》实验三报告

课程:《Python程序设计》
班级: 2341
姓名: 陈远博
学号:20234124
实验教师:王志强
实验日期:2020年4月16日
必修/选修: 公选课

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

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

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

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

5.程序代码托管到码云。

## 2. 实验过程及结果
1.创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序

第一步:打开phythoncharm构建一个基础的编程环境,进行操作前准备!

第二步:本人先选择编写服务端程序。

输入:

import socket
tcpserver = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

开始服务端编程,选择一个合适的IP地址。在本次操作中我选择   127.0.0.1", 2024

这是一个特殊的IPV4地址,是本地回环地址。使我们构建服务端的关键!绝对不能输错!

随后我们尝试进行实验性输入

try:
        data=conn.recv(1024)
        print(data.decode("utf-8"))

        ret_data=input("紧急情况请马上回复:")
        conn.send(ret_data.encode("uft-8"))
    except Exception:
        break
conn.close()

随后调试程序,其可以正常运行!

第三步:我们需要编写一个客户端程序

首先我们要确认一个IP地址必须和服务端的IP地址一致所以本人依然选择使用127.0.0.1", 2024这是一个特殊的IPV4地址是一个回环地址,从而实现客户端的运行

然后我们设置一个utf-8编码这样就可以就可以识别我们书写系统中的各种文字,这是一个基础性操作!如果无法完成我们的客户端就无法识别我们的文字

tcpclient.send(data.encode('utf-8'))
ret = tcpclient.recv(1024)
print(ret.decode('utf-8'))

最后我们完成客户端的编写图如下:

 

 

经过调试程序可以正常运行!

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

 

开始测试服务端读写操作是否正常:

经过测试可以进行打字等操作

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

我们利用聊天程序进行聊天,经过测试程序可以正常运行

 加密操作过于复杂无法展示!

5.程序代码托管到码云

第一步先选择本人需要上传的文件

第二步单击右键选择git并点击提交

第三步注意是否提交成功,并进行确认

确认提交程序!

 ## 3. 实验过程中遇到的问题和解决过程
- 问题1:IP地址填写错误,将“”127.0.0.1"写成127.0.01少了一点导致程序无法运行

  问题1解决方案:检查IP地址,并重新输入,随后程序可以正常运行
- 问题2:调试程序时编写循环程序while Ture中“T”忘记大写
- 问题2解决方案:重写程序将"t"大写

-问题3:忘记规定代码UTF-8

-问题3解决方案:编写程序 conn.send(ret_data.encode('utf-8'))

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

这次实验的难度相较于前几次实验难度大大提升,对我们python掌握提出了更高的要求!本次实验也更贴近于未来的机要通信工作,让我们在做实验的同时感受机要工作的不易与艰苦。这使我们更加重视对编程技术的掌握。实践是检验真理的唯一标准,通过一次次的编程实验。我们的编程技术得到了充分的提升,同时磨炼了我们的耐心与毅力。为把我们培养成和格的社会主义接班人!

 

xxx
xxx

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

93

社区成员

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

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