python:socket基础操作(2)-《udp发送信息》

基础发送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开了哪个端口要对指定的端口发信息才行,发到别的上面是不行的

python:socket基础操作(2)-《udp发送信息》_第1张图片

 非常简单


手动输入想发送的信息

想通过input输入内容,让后再发送过去,也是可以的

import socket

udp_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()

python:socket基础操作(2)-《udp发送信息》_第2张图片

这里我发送了个“abcde”

python:socket基础操作(2)-《udp发送信息》_第3张图片

这边也是成功接收


循环发送信息

每次发送完信息都会自动结束,我们只需要加个while语句就可以循环发送信息了

import socket

udp_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()

python:socket基础操作(2)-《udp发送信息》_第4张图片

发现可以循环发送了

python:socket基础操作(2)-《udp发送信息》_第5张图片

这边也可以进行一个循环的接收


循环发送信息-可手动结束

刚刚我们确实是可以循环发送信息了,但是想终止发送只能去结束代码,可是在正常情况下,我们必须要去正常的结束这个,可以加个if语句判断一下

import socket
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)



while True:
    socket_send = input("请输入要发送的数据:")

    if socket_send == "exit":
        #当检测到exit时则结束循环
        break
    udp_socket.sendto(socket_send.encode("utf-8"),("192.168.6.100",1234))

udp_socket.close()

python:socket基础操作(2)-《udp发送信息》_第6张图片

当检测到exit程序就正常的结束了

 python:socket基础操作(2)-《udp发送信息》_第7张图片

这样就是udp的基础发送消息,这样就成功发送了这些信息了 

你可能感兴趣的:(udp,网络协议,网络,python)