20244104陈思淼 《Python程序设计》实验三报告
课程:《Python程序设计》
班级:2441
姓名:陈思淼
学号:20244104
实验教师:王志强
实验日期:20254月20日
必修/选修: 公选课
1.实验内容
创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
实验要求
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;
(2)要求包含文件的基本操作,例如打开和读写操作。
2. 实验过程及结果
(1)首先构建服务器端,用import导入socket模块,创建套接字。

(2)在电脑的控制面板中查看本机IP地址,绑定IP地址。
设置监听连接,并给予相关提示“服务器正在监听”。
构建代码,使客户端通过输入服务器的IP地址和端口与服务器完成对接

(3)使用“while”语句构建循环体系,使服务器能够不断地接受客户端的连接请求。

(4)客户端信息传输完毕后,关闭套接字,使得服务器与客户端的连接中断。

(5)程序编写完成后,对整个程序的代码进行检查,完整代码如下:

(6)随后构建客户端。首先,用import导入socket模块,创建套接字。

(7)编写代码,使客户端可以连接服务器。利用while和if函数实现客户端与服务器之间对话的循环。同时给予客户端相应的提示如“请输入要发送给服务器的消息: ”“服务器说: {}”“是否继续Y/N?”通过输入Y,可以继续进行一轮新的对话,如果输入N,则终止客户端与服务器之间的对话,程序终止运行。

(8)最后关闭套接字,客户端构建完毕。

(9)客户端完整代码如下:

(10)同时运行服务器与客户端,尝试进行对话。

程序运行正常,可以正常进行对话、重复对话、结束对话。
3. 实验过程
- 问题1:脱离本机与其他同学的电脑链接失败
- 问题1解决方案:经过尝试发现服务端需要本机WLAN IPv4地址
- 问题2:客户端与服务器无法连接。
- 问题2解决方案:发现双方不在同一网络之下。之后,双方连接同一网络,服务器与客户端连接成功。
- ...
其他(感悟、思考等)
-掌握了服务端与客户端的构建原理。在教师细致的流程演示中,我逐步理解了网络通信代码的架构本质。通过查阅技术文档,我领悟到socket模块的调用机制,以及如何通过特定端口实现双端数据互通。这些实践让我对Python的生态体系有了更立体的认知。认识到代码运行环境的精密性。即便程序逻辑无误,若服务端未开启监听或客户端参数配置错误,仍会导致连接失败。这要求双方程序必须基于相同的IP协议(如IPv4地址)和端口号实现时序同步,体现出网络通信中严密的协作机制。
-Python进阶之路如同航海探索,需以积累为锚,以实践为舵,在反复调试中捕获异常信息,在日志分析里追溯问题根源。日常研习时,我们更要善用协作编程的优势,通过结对调试与知识共享,将个体遇到的报错信息转化为团队的经验图谱。这种螺旋上升的学习过程,恰是编程思维成长的生动写照。
参考资料
20244104陈思淼 《Python程序设计》实验三报告的更多相关文章
- 20192305 王梓全Python程序设计实验三报告
20192305 王梓全Python程序设计实验三报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年5月 ...
- 20192305 王梓全Python程序设计实验四报告
20192305 王梓全Python程序设计实验四报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年6月 ...
- 20192305 王梓全Python程序设计实验二报告
20192305 王梓全Python程序设计实验二报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年4月 ...
- 20192305 王梓全Python程序设计实验一报告
20192305 王梓全Python程序设计实验一报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年4月 ...
- Python程序设计实验报告三:分支结构程序设计
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2020.4.5 指导老师 修宇 [实验目的 ...
- 20192113 2020-2021-2 《Python程序设计》实验三报告
20192113 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 衣丽莎 学号:20192113 实验教师 ...
- 20192204李龙威 2019-2020-2 《Python程序设计》实验三报告
20192204李龙威 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1922 姓名: 李龙威 学号:20192204 实 ...
- 20211306 《Python程序设计》实验三报告
学号 20211306 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 2113 姓名: 丁文博 学号:20211306 实验教师:王志强 实验日期 ...
- 20202411 2020-2021-2 《Python程序设计》实验三报告
20202411 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 2024 姓名: 陈书桓 学号:20202411 实验教师 ...
- Python程序设计实验报告二:顺序结构程序设计(验证性实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 崔攀 学号3190505136 成绩 日期 2020.3.22 指导老师 修宇 [实验 ...
随机推荐
- 对称&反对称&完全固定边界条件
ABAQUS Boundary Condition XSYMM 对称边界条件,对称面为与坐标轴1垂直的平面,即U1=UR2=UR3=0; YSYMM 对称边界条件,对称面为与坐标轴2垂直的平面,即U2 ...
- 解密prompt系列50. RL用于优化Agent行为路径的一些思路
OpenAI新推出的Deep Research功能,属实有些惊艳,也验证了去年的一些观点,之后的大模型工作流会呈现一些截然不同的形态,有敏捷型的例如语音端到端的及时对话,也会有异步长流程的复杂任务,去 ...
- 探秘Transformer系列之(12)--- 多头自注意力
探秘Transformer系列之(12)--- 多头自注意力 目录 探秘Transformer系列之(12)--- 多头自注意力 0x00 概述 0x01 研究背景 1.1 问题 1.2 根源 1.3 ...
- glib-2.60在win64,msys2下编译
前阵子,工作原因,需要在win7 64下的msys2来编译glib,下面是一些踩过的坑: 事先声明一下,这些个解决方式及纯粹是为了编译通过,可能有些做法不太适合一些需要正常使用的场合,烦请各位注意下. ...
- numpy -- 处理数值型数据 -- 数据分析三剑客
博客地址:https://www.cnblogs.com/zylyehuo/ NumPy(Numerical Python) 是 Python 语言中做科学计算的基础库.重在于数值计算,也是大部分Py ...
- Windows Server评估版/正式版/数据中心版的来源及转换
评估版: 从微软评估中心下载的版本,相当于微软提供的试用版,可免费使用一段时间.但该版本无法使用 KMS授权或 MAS 永久授权进行激活. 正式版/数据中心版: 从微软许可证中心下载的版本已标识了GL ...
- Git分支命名规范总结
Git分支命名规范总结 在Git分支命名规范中,通常通过前缀明确区分需求(功能开发)和Bug修复,以下是具体规则及示例: 一.命名规范区分原则 需求分支(Feature) 前缀:feature/ 或 ...
- [每日算法] leetcode第88题:合并两个有序数组
leetcode第88题入口 题目描述 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目. 请你 合并 ...
- 【Linux】Vim 设置
[Linux]Vim 设置 零.起因 刚学Linux,有时候会重装Linux系统,然后默认的vi不太好用,需要进行一些设置,本文简述如何配置一个好用的Vim. 壹.软件安装 sudo apt-get ...
- IE 条件注释
参考文档 IE6 IE7 IE8 IE9 IE10 Css hack及IE条件注释法 IE的有条件注释判定IE版本详解(附实例代码)