20212101陈雨扬 实验三《Python程序设计》实验报告
课程:《Python程序设计》
班级:2121
姓名:陈雨扬
学号:20212101
实验教师:王志强
实验日期:2020年4月27日
必修/选修: 公选课
## 1.实验内容
使用socket模块建立套接字,实现交互。
## 2. 实验过程及结果
大致流程:服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),等待客户端连接。此时客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。
有助理解的拓展资料:
服务器1.0:
客户端1.0:
运行结果如下:
优化:可实现一问一答对话
服务器2.0
客户端2.0
运行结果如下:
文件传输:
服务器2.1?
客户端2.1?
输出如下(失败了。。)
## 3. 实验过程中遇到的问题和解决过程
- 问题1:目标计算机积极拒绝,运行失败
- 问题1解决方案:更改端口
- 问题2:send、sendall区别
- 问题2解决方案:
上传至码云
## 其他(感悟、思考等)
通过敲一段代码来实现聊天交流功能着实神奇,但感觉有些超出能力范围了,现在也不是太懂 -_-||
注:在CSDN搜到了很多有用的资料。
## 参考资料
- Python之socket模块使用详解(附带解决丢包、粘包问题)_皮皮鱼哟的博客-CSDN博客_python socket 丢包
- python+socket 实现网络信息交互及文件传输_35仍未老的博客-CSDN博客_python socket 文件传输