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模块学习 re 正则表达式
May 19 Python
Python tkinter模块中类继承的三种方式分析
Aug 08 Python
简单了解python模块概念
Jan 11 Python
Python使用try except处理程序异常的三种常用方法分析
Sep 05 Python
Python字典创建 遍历 添加等实用基础操作技巧
Sep 13 Python
解决python selenium3启动不了firefox的问题
Oct 13 Python
对python多线程与global变量详解
Nov 09 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 Python
python多线程使用方法实例详解
Dec 30 Python
JupyterNotebook 输出窗口的显示效果调整方法
Apr 13 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将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
Yii2 ActiveRecord多表关联及多表关联搜索的实现
2016/06/30 PHP
不错的一个日期输入 动态
2006/11/06 Javascript
jQuery EasyUI API 中文文档 - TimeSpinner时间微调器
2011/10/23 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
单击按钮显示隐藏子菜单经典案例
2013/01/04 Javascript
js修改table中Td的值(定义td的双击事件)
2013/01/10 Javascript
showModelDialog弹出文件下载窗口的使用示例
2013/11/19 Javascript
jquery实现背景墙聚光灯效果示例分享
2014/03/02 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
2014/12/02 Javascript
AngularJS HTML编译器介绍
2014/12/06 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
2015/09/27 Javascript
详解JavaScript UTC时间转换方法
2016/01/07 Javascript
jQuery与JS加载事件用法分析
2016/09/04 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
gulp教程_从入门到项目中快速上手使用方法
2017/09/14 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
JS获取浏览器地址栏的多个参数值的任意值实例代码
2018/07/24 Javascript
vue实现倒计时获取验证码效果
2020/04/17 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
js+canvas实现刮刮奖功能
2020/09/13 Javascript
[06:40]2014DOTA2西雅图国际邀请赛 DK战队巡礼
2014/07/07 DOTA
Python设计模式之MVC模式简单示例
2018/01/10 Python
Python字符串格式化%s%d%f详解
2018/02/02 Python
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
Django如何实现网站注册用户邮箱验证功能
2019/08/14 Python
CSS3实现头像旋转效果
2017/03/13 HTML / CSS
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
BOSE德国官网:尽探索之力,享音乐之极
2016/12/11 全球购物
怎样声明子类
2013/07/02 面试题
班主任寄语大全
2014/04/04 职场文书
活动总结怎么写
2014/04/28 职场文书
品酒会策划方案
2014/05/26 职场文书
Python基础之hashlib模块详解
2021/05/06 Python