基础发送udp信息
1.导入socket模块
2.使用udp模块
3.发送内容
4.关闭套接字
很简单的4步就可以实现udp的消息发送
import socket
# 导入模块udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# 使用ipv4 udp协议udp_socket.sendto(b"hello world",("192.168.6.150",1234))
# 要发送的内容,他的目标ip+端口号udp_socket.close()
#关闭套接字
相信你都看socket了,python里的小知识点肯定是学习过了,我这里就不做过多的介绍
当我执行了代码,自动就会发送到我的win7上
注意:win7开了哪个端口要对指定的端口发信息才行,发到别的上面是不行的
非常简单
手动输入想发送的信息
想通过input输入内容,让后再发送过去,也是可以的
import socketudp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)socket_send = input("请输入要发送的数据:")
# 交互式输入要发送的内容udp_socket.sendto(socket_send.encode("utf-8"),("192.168.6.150",1234))
# 发送变量内容使用encode("utf-8") “utf-8编码”udp_socket.close()
这里我发送了个“abcde”
这边也是成功接收
循环发送信息
每次发送完信息都会自动结束,我们只需要加个while语句就可以循环发送信息了
import socketudp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)while True:# 使程序一直循环,一直可以发送内容socket_send = input("请输入要发送的数据:")udp_socket.sendto(socket_send.encode("utf-8"),("192.168.6.150",1234))udp_socket.close()
发现可以循环发送了
这边也可以进行一个循环的接收
循环发送信息-可手动结束
刚刚我们确实是可以循环发送信息了,但是想终止发送只能去结束代码,可是在正常情况下,我们必须要去正常的结束这个,可以加个if语句判断一下
import socket
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)while True:socket_send = input("请输入要发送的数据:")if socket_send == "exit":#当检测到exit时则结束循环breakudp_socket.sendto(socket_send.encode("utf-8"),("192.168.6.100",1234))udp_socket.close()
当检测到exit程序就正常的结束了
这样就是udp的基础发送消息,这样就成功发送了这些信息了