python中UDP编程实现通信
python中UDP编程实现通信
本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。
1、服务器端
recvfrom()方法返回数据和客户端的地址与端口,这样,服务器收到数据后,直接调用sendto()就可以把数据用UDP发给客户端。
#coding:utf-8
importsocket
#创建套接字
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#绑定地址和端口
addr='127.0.0.1'
port=9999
s.bind((addr,port))
print("BindUDPon",port)
#数据处理
whileTrue:
data,addr=s.recvfrom(1024)
print("Receivedatafrom%s:%s"%addr)
s.sendto(b"Hello,%s!"%data,addr)
2、客户端
客户端使用UDP时,首先仍然创建基于UDP的Socket,然后,不需要调用connect(),直接通过sendto()给服务器发数据:
#coding:utf-8
importsocket
addr='127.0.0.1'
port=9999
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
fordatain[b'Hello',b'world!']:
s.sendto(data,(addr,port))
print(s.recv(1024).decode('utf-8'))
s.close()
我们知道想要实现数据之间的传递,会有用户和服务方的产生。由用户提供需求,服务方把成果反馈给用户。本篇就UDP编程在通信的过程分为两个部分:服务器端和客户端。
以上就是python中UDP编程实现通信的方法,大家可以先就两种不同的端口进行学习,然后再分别尝试代码的运行部分。更多Python学习教程请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>python正则表达式中的零宽断言
python正则表达式中的零宽断言1、概念有些元字符不匹配任何字符,只是简单的表示成功或失败,所以这些字符也叫零宽断言。2、符号举例(1)|或操作...详情>>
2023-11-14 11:35:03python方法的绑定和未绑定
python方法的绑定和未绑定1、说明未绑定对象的方法:无self参数的方法,通过定义类调用函数,返回未绑定self的方法。绑定对象的方法:带self参...详情>>
2023-11-14 09:53:02python海象运算符的使用
python海象运算符的使用1、在判断条件下允许操作。在一定程度上简化了代码,但降低了可读性。i=len((l:=[1,2,3]))#先对l进行赋值,在对i赋值whi...详情>>
2023-11-14 02:38:21pythonelif语句报错是什么原因
python的else和elif语句也可以叫做子句,因为它们不能独立使用,两者都是出现在if、for、while语句内部的。else子句可以增加一种选择;而elif子...详情>>
2023-11-13 21:46:35