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

yipeiwu_com6年前Python基础
直接上代码:
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"
 

相关文章

python3+PyQt5使用数据库窗口视图

python3+PyQt5使用数据库窗口视图

能够为数据库数据提供的最简单的用户界面之一就是窗体,窗体可以一次性呈现出来自同一记录的各个域。本文通过python3+pyqt5改写实现了python Qt gui 快速变成15章的例子...

Django实现网页分页功能

Django实现网页分页功能

本文实例为大家分享了Django实现分页功能,为了容易区别功能的展现,先创建一个数据库,用数据库中的数据做演示。 创建数据库步骤如下: 1.创建模型,代码如下: from djang...

Python中列表、字典、元组数据结构的简单学习笔记

列表 列表是Python中最具灵活性的有序集合对象类型。与字符串不同的是,列表可以包含任何类型的对象:数字、字符串甚至其他列表。列表是可变对象,它支持原地修改的操作。 Python的列表...

总结Python编程中三条常用的技巧

在 python 代码中可以看到一些常见的 trick,在这里做一个简单的小结。 json 字符串格式化 在开发 web 应用的时候经常会用到 json 字符串,但是一段比较长的 jso...

python之信息加密题目详解

1.贴题 题目来自PythonTip 信息加密 给你个小写英文字符串a和一个非负数b(0<=b<26), 将a中的每个小写字符替换成字母表中比它大b的字母。这里将字母表...