Python+Socket实现基于UDP协议的局域网广播功能示例

yipeiwu_com6年前Python基础

本文实例讲述了Python+Socket实现基于UDP协议的局域网广播功能。分享给大家供大家参考,具体如下:

服务器端:

# udp_gb_server.py
'''服务端(UDP协议局域网广播)'''
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
PORT = 1060
network = '<broadcast>'
s.sendto('Client broadcast message!'.encode('utf-8'), (network, PORT))

客户端:

# udp_gb_client.py
'''客户端(UDP协议局域网广播)'''
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
PORT = 1060
s.bind(('', PORT))
print('Listening for broadcast at ', s.getsockname())
while True:
  data, address = s.recvfrom(65535)
  print('Server received from {}:{}'.format(address, data.decode('utf-8')))

运行效果:

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python中PyQt5/PySide2的按钮控件使用实例

Python中PyQt5/PySide2的按钮控件使用实例

在之前的文章中,我们介绍了PyQt5和PySide2中主窗口控件MainWindow的使用、窗口控件的4中基础布局管理。从本篇开始,我们来了解一下PyQt5和PySide2中基础控件的使...

收集的几个Python小技巧分享

获得当前机器的名字: 复制代码 代码如下: def hostname():         sys = os.nam...

在Python中操作列表之list.extend()方法的使用

 extend()方法追加序列内容到列表。 语法 以下是extend()方法的语法: list.extend(seq) 参数    ...

200 行python 代码实现 2048 游戏

200 行python 代码实现 2048 游戏

创建游戏文件 2048.py 首先导入需要的包: import curses from random import randrange, choice from collection...

Pandas库之DataFrame使用的学习笔记

Pandas库之DataFrame使用的学习笔记

1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。 或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(...