20234124陈远博《Pyhton程序设计》实验三(最终版)

20234124陈远博 2024-04-23 19:17:36

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

...全文
69 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文系统研究了基于XGBoost的光伏阵列多类型复合故障诊断方法,深入探讨了如何利用XGBoost这一高性能集成学习算法实现对光伏系统中短路、开路、阴影遮挡等多种典型故障的高精度识别与分类。文章详细阐述了XGBoost模型的理论基础及其在故障诊断中的独特优势,包括优异的非线性拟合能力、对缺失数据的鲁棒性、高效的训练速度以及出色的泛化性能。研究通过采集光伏阵列的实际运行数据(如电压、电流、温度等关键特征参数),构建高质量的训练数据集,并设计合理的特征工程流程,进而建立基于XGBoost的故障诊断模型。实验结果表明,该模型在准确率、召回率和F1-score等核心评价指标上均显著优于传统的SVM、决策树等机器学习方法,展现出卓越的诊断效能。此外,文章配套提供了完整的Python代码实现,涵盖数据预处理、模型训练、参数调优与性能评估全过程,极大地方便了读者复现研究成果并将其应用于实际的光伏电站智能运维系统中。; 适合人群:具备一定Python编程能力和机器学习基础知识,从事新能源发电、电力系统监控、智能运维或工业故障诊断等相关领域的科研人员、工程师和技术开发者,特别适合致力于提升光伏发电系统自动化、智能化管理水平的专业人士。; 使用场景及目标:① 实现光伏电站的实时故障监测与早期预警,提升运维效率并降低发电损失;② 构建智能诊断模块集成于光伏监控平台,实现故障的自动化识别与分类;③ 为相关科研项目提供可复现的算法范例与代码基础,推动先进机器学习技术在新能源领域的应用研究; 阅读建议:建议读者结合所提供的完整Python代码,动手实践数据清洗、特征提取、模型训练与交叉验证的全流程,深入理解XGBoost算法的关键参数(如学习率、树的深度、正则化项)对模型性能的影响,并尝试通过网格搜索或贝叶斯优化等方法进行超参数调优,以适应不同规模和环境下的光伏系统诊断需求。
内容概要:本文提出了一种针对分布式光伏储能系统的优化配置方法,并基于Matlab实现相关代码仿真。研究聚焦于多渗透率电动汽车接入背景下配电网承载能力的评估问题,构建了一个涵盖一次设备安全、负荷平稳性、电能质量和系统效率等多维度的综合评价指标体系。通过融合熵权法与模糊综合评价方法,建立了双层评分模型,实现了对不同场景下配电网承载能力的客观量化评估。文中设计了多场景算例进行仿真分析,系统探讨了电动汽车不同渗透率对配电网各项性能指标的影响规律,并开展了指标灵敏度分析,充分验证了所提方法在复杂工况下的有效性与实用价值。; 适合人群:具备电力系统基础知识,熟悉Matlab编程,从事新能源并网、智能电网规划与优化等相关领域的研究人员及工程技术人员,尤其适合研究生及以上学历或具有1年以上相关工作经验的专业人员; 使用场景及目标:①用于评估高比例分布式光伏与电动汽车接入对配电网承载能力的影响;②为配电网扩容改造、储能系统配置及电动汽车充电站规划提供科学决策支持;③作为科研项目或学位论文的复现与扩展研究基础; 阅读建议:建议读者按照文档目录顺序系统学习,重点关注模型构建逻辑与Matlab代码实现细节,结合提供的仿真结果深入理解评价方法的应用流程,有条件者应动手复现代码以加深掌握。

93

社区成员

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

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