Python中recv与recvfrom区别


在Python网络编程中,recv与recvfrom都用于接收数据,但用法不同。recv用于TCP连接,直接接收数据;recvfrom用于UDP,可接收数据及发送方地址,适用于无连接通信。

1、 启动Python的IDLE开发环境,创建名为client.py的新文件,然后在其中输入相应的代码内容。

2、 此处采用UDP报文协议,SOCK_DGRAM参数专用于UDP通信。

3、 在IDLE中新建名为server.py的文件,用于作为服务器端接收数据,编写相应代码即可实现功能。

4、 接收数据时调用的是recv函数

5、 按下Win+R键打开运行窗口,输入指定命令即可。

6、 cmd

7、 启动命令行界面

8、 在命令行中进入server.py所在目录,执行运行命令启动该文件。

9、 程序将暂停并等待操作完成

10、 在client.py文件中,通过IDLE菜单栏选择运行功能,点击运行模块进行调试执行。

11、 服务端将打印出客户端发送的hello消息。

12、 修改server.py文件,将代码调整为使用recvfrom函数进行数据接收,具体实现方式所示。

13、 重复执行第4至第5步,可观察到输出结果为元组类型,其中包含发送的数据、发送方地址及端口号,即client.py运行时所使用的端口信息。

14、 recvfrom函数不仅能接收数据,还能获取发送方的地址信息,功能比recv更全面。

            <!-- 非定向300*250按钮    17/09  wenjing  begin -->
            <!-- 非定向300*250按钮  end -->
        </div>



Source link

未经允许不得转载:紫竹林-程序员中文网 » Python中recv与recvfrom区别

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
关于我们 免责申明 意见反馈 隐私政策
程序员中文网:公益在线网站,帮助学习者快速成长!
关注微信 技术交流
推荐文章
每天精选资源文章推送
推荐文章
随时随地碎片化学习
推荐文章
发现有趣的