码迷,mamicode.com
首页 > 编程语言 > 详细

python之UDP编程

时间:2015-05-11 14:24:57      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

 

使用UDP协议时,不需要建立连接,只需要知道对方的IP地址和端口号,就可以直接发数据包。但是,能不能到达就不知道了。

虽然用UDP传输数据不可靠,但它的优点是和TCP比,速度快,对于不要求可靠到达的数据,就可以使用UDP协议。

 

服务器

#-*- coding:utf8 -*-
import socket, threading

def udplink(s, data, addr):
    print Received from %s:%s %addr, data
    s.sendto(Hello, %s %data, addr)

#SOCK_DGRAM指定了这个Socket的类型是UDP
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#绑定端口
s.bind((127.0.0.1, 9999))
#UDP编程不需要监听
print Bind UDP on 9999...
while True:
    data, addr = s.recvfrom(1024)
    t = threading.Thread(target=udplink, args=(s, data, addr))
    t.start()

客户端

#-*- coding:utf8 -*-
import socket, time

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
for data in [David, Yt, Amenda]:
    # 发送数据:
    s.sendto(data, (127.0.0.1, 9999))
    # 接收数据:
    print s.recv(1024)
    time.sleep(2)
s.close()

 

2015-05-11

python之UDP编程

标签:

原文地址:http://www.cnblogs.com/whuyt/p/4494248.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!