udp通信

1、udp客户端

from socket import *


def main():
    #  创建套接字
    udp_socket = socket(AF_INET,SOCK_DGRAM)
    #  接收方地址
    ip = input('请输入对方的ip:')
    port = int(input('请输入对方的端口:'))
    dest_addr = (ip,port)
    #  发送内容
    while True:
        date =input('请输入要发送的内容:')
        udp_socket.sendto(date.encode('utf-8'),dest_addr)
    #  关闭套接字
    udp_socket.close()

if __name__ == "__main__":
    main()

 

2.udp_服务端

from socket import *


def main():
    #  创建套接字
    udp_socket = socket(AF_INET,SOCK_DGRAM)
    #  端口
    udp_socket.bind(('',7788))
    #  接受消息
    while True:
        recv_msg = udp_socket.recvfrom(1024)
        print(recv_msg[0].decode('utf-8'))  #  recv_msg[0]是发送过来的内容
        print(recv_msg[1])  #   recv_msg[1]  发送方的ip
    #  关闭套接字
    udp_socket.close()


if __name__ == '__main__':
    main()

 

3、udp_聊天器

from socket import *


def send_msg(udp_socket):
    ip = input('请输入要发送的ip:')
    port = int(input('请输入端口:'))
    dest_addr =(ip,port)
    msg = input('请输入要发送的内容:')
    udp_socket.sendto(msg.encode('utf-8'),dest_addr)


def rec_msg(udp_socket):
        #  接受内容
        msg = udp_socket.recvfrom(1024)
        print(msg[0].decode('utf-8'))


def main():
    #  创建套接字
    udp_socket = socket(AF_INET,SOCK_DGRAM)
    #  绑定端口
    udp_socket.bind(('',5060))
    #  发送内容
    while True:
        print('1:发送消息:')
        print('2:接受消息:')
        ip_num = input('请选择你要操作的功能序号1或者2:')
        if ip_num =='1':

            send_msg(udp_socket)
            print('发送成功')
    #  接受内容
        if ip_num == '2':
            rec_msg(udp_socket)

    #关闭套接字
    udp_socket.close()


if __name__ == '__main__':
    main()

 

posted @ 2019-03-08 15:43  chengzhengdong  阅读(298)  评论(0编辑  收藏  举报