python实现的udp协议Server和Client代码实例


Posted in Python onJune 04, 2014

直接上代码:
Server端:

 #!/usr/bin/env python
 # UDP Echo Server -  udpserver.py
 import socket, traceback host = ''
 port = 54321
 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
 s.bind((host, port))
 while 1:
     try:
         message, address = s.recvfrom(8192)
         print "Got data from", address, ": ", message
         s.sendto(message, address)
     except (KeyboardInterrupt, SystemExit):
         raise
     except:
         traceback.print_exc()
 

Client端:
1 #!/usr/bin/env python
 # UDP Client - udpclient.py
 import socket, sys host = sys.argv[1]
 textport = sys.argv[2]
 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 try:
     port = int(textport)
 except ValueError:
     port = socket.getservbyname(textport, 'udp')
 s.connect((host, port))
 while 1:
     print "Enter data to transmit:"
     data = sys.stdin.readline().strip()
     s.sendall(data)
     print "Looking for replies; press Ctrl-C or Ctrl-Break to stop."
     buf = s.recv(2048)
     if not len(buf):
         break
     print "Server replies: ",
     sys.stdout.write(buf)
     print "\n"
 
Python 相关文章推荐
Python性能优化的20条建议
Oct 25 Python
Python实现截屏的函数
Jul 25 Python
python3基于OpenCV实现证件照背景替换
Jul 18 Python
PyCharm代码回滚,恢复历史版本的解决方法
Oct 22 Python
python实现RabbitMQ的消息队列的示例代码
Nov 08 Python
pandas每次多Sheet写入文件的方法
Dec 10 Python
详解Python循环作用域与闭包
Mar 21 Python
Python内置random模块生成随机数的方法
May 31 Python
基于python及pytorch中乘法的使用详解
Dec 27 Python
新手学习Python2和Python3中print不同的用法
Jun 09 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
Jan 29 Python
python 网络编程要点总结
Jun 18 Python
Python实现同时兼容老版和新版Socket协议的一个简单WebSocket服务器
Jun 04 #Python
Python程序员鲜为人知但你应该知道的17个问题
Jun 04 #Python
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
Jun 04 #Python
python控制台英汉汉英电子词典
Apr 23 #Python
测试、预发布后用python检测网页是否有日常链接
Jun 03 #Python
Python中的CURL PycURL使用例子
Jun 01 #Python
Python实现多线程下载文件的代码实例
Jun 01 #Python
You might like
php小偷相关截取函数备忘
2010/11/28 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
php获得文件大小和文件创建时间的方法
2015/03/13 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
php简单中奖算法(实例)
2017/08/15 PHP
PHP基于curl实现模拟微信浏览器打开微信链接的方法示例
2019/02/15 PHP
yii框架使用分页的方法分析
2019/07/25 PHP
php连接sftp的作用以及实例代码
2019/09/23 PHP
Apache+PHP+MySQL搭建PHP开发环境图文教程
2020/08/06 PHP
javascript-TreeView父子联动效果保持节点状态一致
2007/08/12 Javascript
用js替换除数字与逗号以外的所有字符的代码
2014/06/07 Javascript
jQuery的ready方法详解
2014/11/27 Javascript
nodejs中的fiber(纤程)库详解
2015/03/24 NodeJs
JS实现焦点图轮播效果的方法详解
2016/12/19 Javascript
前端编码规范(3)JavaScript 开发规范
2017/01/21 Javascript
vue 2.0项目中如何引入element-ui详解
2017/09/06 Javascript
vue中父子组件注意事项,传值及slot应用技巧
2018/05/09 Javascript
使用vue-cli导入Element UI组件的方法
2018/05/16 Javascript
Vue无限滑动周选择日期的组件的示例代码
2018/07/18 Javascript
vue 路由meta 设置导航隐藏与显示功能的示例代码
2020/09/04 Javascript
[01:10]DOTA2次级职业联赛 - EP战队宣传片
2014/12/01 DOTA
Python聚类算法之基本K均值实例详解
2015/11/20 Python
对Python中创建进程的两种方式以及进程池详解
2019/01/14 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
CSS3的常见transformation图形变化用法小结
2016/05/13 HTML / CSS
世界上最大的汽车共享网站:Zipcar
2017/01/14 全球购物
银行求职推荐信范文
2013/11/30 职场文书
初二政治教学反思
2014/01/12 职场文书
敬老文明号事迹材料
2014/01/16 职场文书
加拿大探亲邀请信
2014/01/28 职场文书
伊琍体标语
2014/06/25 职场文书
竞选班干部演讲稿500字
2014/08/20 职场文书
焦裕禄观后感
2015/06/03 职场文书
学习委员竞选稿
2015/11/20 职场文书
mysql5.5中文乱码问题解决的有用方法
2022/05/30 MySQL