课程:《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程序设计》实验三报告的更多相关文章

  1. 20192305 王梓全Python程序设计实验三报告

    20192305 王梓全Python程序设计实验三报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年5月 ...

  2. 20192305 王梓全Python程序设计实验四报告

    20192305 王梓全Python程序设计实验四报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年6月 ...

  3. 20192305 王梓全Python程序设计实验二报告

    20192305 王梓全Python程序设计实验二报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年4月 ...

  4. 20192305 王梓全Python程序设计实验一报告

    20192305 王梓全Python程序设计实验一报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年4月 ...

  5. Python程序设计实验报告三:分支结构程序设计

    安徽工程大学 Python程序设计 实验报告 班级   物流191   姓名  姚彩琴  学号3190505129 成绩 日期     2020.4.5     指导老师       修宇 [实验目的 ...

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

    20192113 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 衣丽莎 学号:20192113 实验教师 ...

  7. 20192204李龙威 2019-2020-2 《Python程序设计》实验三报告

    20192204李龙威 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1922 姓名: 李龙威 学号:20192204 实 ...

  8. 20211306 《Python程序设计》实验三报告

    学号 20211306 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 2113 姓名: 丁文博 学号:20211306 实验教师:王志强 实验日期 ...

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

    20202411 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 2024 姓名: 陈书桓 学号:20202411 实验教师 ...

  10. Python程序设计实验报告二:顺序结构程序设计(验证性实验)

      安徽工程大学 Python程序设计 实验报告 班级   物流191   姓名  崔攀  学号3190505136 成绩 日期     2020.3.22     指导老师       修宇 [实验 ...

随机推荐

  1. 对称&反对称&完全固定边界条件

    ABAQUS Boundary Condition XSYMM 对称边界条件,对称面为与坐标轴1垂直的平面,即U1=UR2=UR3=0; YSYMM 对称边界条件,对称面为与坐标轴2垂直的平面,即U2 ...

  2. 解密prompt系列50. RL用于优化Agent行为路径的一些思路

    OpenAI新推出的Deep Research功能,属实有些惊艳,也验证了去年的一些观点,之后的大模型工作流会呈现一些截然不同的形态,有敏捷型的例如语音端到端的及时对话,也会有异步长流程的复杂任务,去 ...

  3. 探秘Transformer系列之(12)--- 多头自注意力

    探秘Transformer系列之(12)--- 多头自注意力 目录 探秘Transformer系列之(12)--- 多头自注意力 0x00 概述 0x01 研究背景 1.1 问题 1.2 根源 1.3 ...

  4. glib-2.60在win64,msys2下编译

    前阵子,工作原因,需要在win7 64下的msys2来编译glib,下面是一些踩过的坑: 事先声明一下,这些个解决方式及纯粹是为了编译通过,可能有些做法不太适合一些需要正常使用的场合,烦请各位注意下. ...

  5. numpy -- 处理数值型数据 -- 数据分析三剑客

    博客地址:https://www.cnblogs.com/zylyehuo/ NumPy(Numerical Python) 是 Python 语言中做科学计算的基础库.重在于数值计算,也是大部分Py ...

  6. Windows Server评估版/正式版/数据中心版的来源及转换

    评估版: 从微软评估中心下载的版本,相当于微软提供的试用版,可免费使用一段时间.但该版本无法使用 KMS授权或 MAS 永久授权进行激活. 正式版/数据中心版: 从微软许可证中心下载的版本已标识了GL ...

  7. Git分支命名规范总结

    Git分支命名规范总结 在Git分支命名规范中,通常通过前缀明确区分需求(功能开发)和Bug修复,以下是具体规则及示例: 一.命名规范区分原则 需求分支(Feature) 前缀:feature/ 或 ...

  8. [每日算法] leetcode第88题:合并两个有序数组

    leetcode第88题入口 题目描述 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目. 请你 合并 ...

  9. 【Linux】Vim 设置

    [Linux]Vim 设置 零.起因 刚学Linux,有时候会重装Linux系统,然后默认的vi不太好用,需要进行一些设置,本文简述如何配置一个好用的Vim. 壹.软件安装 sudo apt-get ...

  10. IE 条件注释

    参考文档 IE6 IE7 IE8 IE9 IE10 Css hack及IE条件注释法 IE的有条件注释判定IE版本详解(附实例代码)