• python_网络编程socket(UDP)


    服务端:

    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)  #创建基于UDP协议的socket对象
    sk.bind(('127.0.0.1',8099))     #把地址绑定到套接字
    
    msg,addr = sk.recvfrom(1024)   #接收数据和数据的地址(数据大小)
    print(msg.decode('utf-8'))  #打印
    sk.sendto(b'wdc',addr)   #发送数据和接收的数据的地址
    
    sk.close()  #关闭连接

    客户都:

    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)   #创建基于UDP协议的socket对象
    ip_port = ('127.0.0.1',8099)    #将地址和端口号放在一共元组里面
    
    sk.sendto(b'yhf',ip_port)   #发送数据和地址
    ret,addr = sk.recvfrom(1024)    #接收数据和数据的地址(数据大小)
    print(ret.decode('utf-8'))
    sk.close()  #关闭连接
    • UDP的server不需要进行监听也不需要建立连接
    • 在启动服务之后只能被动的等待客户都发送信息过来
    • 客户都发送消息的同时还会,自带地址信息
    • 消息回复的时候,不仅需要发送消息,还需要把自己的地址填写上

    实例:多客户端通信

      服务端:

    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    sk.bind(('127.0.0.1',8099))
    
    while True:
        msg,addr = sk.recvfrom(1024)
        print(msg.decode('utf-8'))
        info = input('>>>')
        info = ('来自服务器的消息:{}'.format(info)).encode('utf-8')
        sk.sendto(info,addr)
    
    sk.close()

      客户端1:

    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    
    ip_port = ('127.0.0.1',8099)
    
    while True:
        info = input('大哥:')
        info = ('来自大哥的消息:{}'.format(info)).encode('utf-8')
        sk.sendto(info,ip_port)
        msg,addr = sk.recvfrom(1024)
        print(msg.decode('utf-8'))
    
    sk.close()

      客户端2:

    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    
    ip_port = ('127.0.0.1',8099)
    
    while True:
        info = input('二哥:')
        info = ('来自二哥的消息:{}'.format(info)).encode('utf-8')
        sk.sendto(info, ip_port)
        msg,addr = sk.recvfrom(1024)
        print(msg.decode('utf-8'))
    
    sk.close()
  • 相关阅读:
    使用公钥和私钥实现LINUX下免密登录
    XML入门
    JSP页面中的errorPage属性和web.xml<error-page>标签的区别
    JAVA、TOMCAT环境变量配置
    在Eclipse Neon中导入serlvet-api等jar包
    56. Merge Intervals
    55. Jump Game
    34. Find First and Last Position of Element in Sorted Array
    33. Search in Rotated Sorted Array
    3. Longest Substring Without Repeating Characters
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/11694949.html
Copyright © 2020-2023  润新知