python udp编程_Python UDP编程小示例
参照着廖雪峰的python教程敲的代码。
这个示例就是很简单的服务器端直接接收来自客户端的数据,然后稍作处理返回给客户端;客户端给服务器端发送数据然后将接收到的返回数据打印。
UDPServer.py:
# -*- coding: utf-8 -*-
import socket
#SOCK_DGRAM指定了这个Socket的类型是UDP
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#绑定端口
s.bind(('127.0.0.1', 9999))
#不需要调用listen()方法,而是直接接收来自任何客户端的数据
print('Bind UDP on 9999....')
while True:
#接收数据
data, addr = s.recvfrom(1024) #recvfrom()方法返回数据和客户端的地址与端口
print('Received from %s:%s.' % addr)
if data == b'exit':
s.close() #如果不关掉socket,则下次运行程序会报端口已被占用
break
else:
s.sendto(b'Hello, %s!' % data, addr)
UDPClient.py:
# -*- coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
for data in [b'Michael', b'Tracy', b'Sarah', b'exit']:
#发送数据
s.sendto(data, ('127.0.0.1', 9999))
#接收数据
print(s.recv(1024).decode('utf-8'))
s.close()
因为UDP是面向非连接的,所以比TCP编程少了“建立连接(客户端发起服务器端接受)和监听端口(客户端)”的步骤,并且接收数据和发送数据所使用的数据也不一样。
运行结果:
服务器端:
客户端:
python udp编程_Python UDP编程小示例相关推荐
- python udp通信_Python网络编程(三)
回顾 在<Python进阶记录之网络编程(二)>中,我们介绍了UDP端口号的基本概念和作用以及Python中UDP服务端的端口绑定和简单创建.今天我们利用UDP server和UDP cl ...
- python事件驱动编程_Python事件驱动编程
事件驱动的编程侧重于事件.最终,程序的流程取决于事件.到目前为止,我们处理顺序或并行执行模型,但具有事件驱动编程概念的模型称为异步模型.事件驱动的编程取决于始终侦听新传入事件的事件循环.事件驱动编程的 ...
- python socket编程_Python Socket编程实现网络编程
对于有经验的开发人员来说,掌握的编程语言应该是不少的.在这些编程语言中,网络编程的应用时必不可少的.其中Python也是这样的编程语言.我们今天将会在这里为大家详细介绍一下Python Socket编 ...
- python 网络编程_Python网络编程(六)
回顾 在<Python进阶记录之网络编程(五)>中,我们介绍了如何利用TCP服务端和客户端实现一个简单的点对点聊天,区别基于TCP协议和UDP协议的不同之处.今天我们讲一下如何利用多进程和 ...
- python树莓派编程_python树莓派编程
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 例如,你可以用树莓派搭建你自己的家用云存储服务器.? 树莓派用python来进行 ...
- python中http协议编程_python网络编程、套接字、HTTP协议
网络编程 网络目的 : 数据的传输 网络数据传输是一个复杂的过程 OSI 七层模型 --> 网络通信标准化流程 应用层 : 提供用户服务,具体内容由特定程序规定 表示层 : 数据的压缩优化 会话 ...
- python 鱼骨图_python面向对象编程,鱼骨图分析法
一.面向对象编程 面向过程编程,核心是编程二字,过程指的是解决问题的步骤,即先干什么.后干什么.再干什么.然后干什么-- 与工厂的工艺流程差不多,前后都有影响 优点:复杂的问题流程化,进而简单化, ...
- 理解python并发编程_Python并发编程很简单
上次已经和大家探讨了关于进程和线程的区别和联系相关的东东,今天呢,咱们再次回到 好啦,废话少说,咱们就开始吧! 首先说一下哦,_thread和threading哦,到这可能有朋友会问了,这两个有什么区 ...
- python高级网络编程_python高级编程——网络编程(二)
UDP 概念和介绍 UDP --- 用户数据报协议,是一个无连接的简单的面向数据报的运输层协议. UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并 不能保证它们能到达目的地. U ...
最新文章
- AGGCN | 基于图神经网络的关系抽取模型
- 表征学习、图神经网络、可解释的 AI,ML 机器人七大研究进展一览
- 时间与字符串之间的转换
- 疑似荣耀30S将于今日正式官宣:首发搭载全新麒麟820芯片
- Win 2012 OS 安装.Net Framework 3.5
- MYSQL 引擎的情况
- 【NodeJS】20 koa 企业级Cms内容管理系统-XMind功能分析、ERStudio设计数据库ER图
- 网页加速优化简单总结
- java视频生成缩略图_Java调用ffmpeg工具生成视频缩略图实例
- 腾讯安全发布远程桌面服务高危漏洞(CVE-2019-1181 / 1182)修复工具
- 日本流行语------收录
- 对象含有与成员函数不兼容的类型限定符
- 在一个页面同时引入两个百度地图
- Gitlab统计代码的贡献量指标
- php工具箱在win10自动退出,win10游戏闪退修复办法
- 【学习OpenCV4】OpenCV入门精讲(C++/Python双语教学)
- 为什么只看重结果_不要只看重结果 过程也是美丽的
- JavaScript游戏之连连看连线算法实例
- 什么是wms仓储管理系统?
- curl开源软件使用详解
热门文章
- [Elasticsearch] es 6.8 编译报错 invalid type code: 85
- 【https】keystore was tampered with or password was incorrect
- Spring : spring-jcl-5.1.2.RELEASE.jar日志包
- 【Flink】No key set. This method should not be called outside of a keyed context.
- 【Calcite】Calcite入门
- map按kye排序 按value排序
- android Mediaplayer各种属性和方法简单介绍
- JVM各个组成部分和其基本功能
- Android生命周期帮助类,Android Service类与生命周期详细介绍_Android_脚本之家
- java dataset类的方法,C#中DataSet转化为实体集合类的方法