zoukankan      html  css  js  c++  java
  • socket创建UDP服务端和客户端

    UDP服务端代码示例:
    
    from socket import *
    
    #1.创建数据报套接字
    sockfd = socket(AF_INET, SOCK_DGRAM)
    
    #2.绑定服务端地
    sockfd.bind(("0.0.0.0", 8888))
    
    while True:
        #3.接收消息   返回值:data 接收到的内容  addr 消息发送方的地址
         #recvfrom每次接收一个报文,如果没有接收完全则丢弃没有收到的内容
    
        data, addr = sockfd.recvfrom(5)    
        print("Receive from %s:%s" % (data.decode(),addr))
    
        #4.发送消息 参数: data  要发送的内容(bytes)  addr  目标地址  
           # 返回:发送字节数
        data = input("给客户端发送:")
        sockfd.sendto(data.encode(),addr)
    
    #5.关闭套接字
    sockfd.close()
    
    ----------------------------------------------------------------------
    UDP客户端代码示例:
    
    from socket import *
    import sys
    
    if len(sys.argv) < 3:
        print('''
                argv is error!
                argv < 3
                ''')
    
    HOST = sys.argv[1]      #直接从命令端输入,返回一个列表
    PORT = int(sys.argv[2])
    ADDR = (HOST,PORT)
    
    #1. 创建套接字
    sockfd = socket(AF_INET, SOCK_DGRAM)
    
    while True:
        data = input("消息:")
        if not data:      #如果数据为空字符串的话,就跳出循环
            break
        sockfd.sendto(data.encode(), ADDR)
    
        data,addr = sockfd.recvfrom(1024)
        print("从服务收到",data.decode())
    
    sockfd.close()    
  • 相关阅读:
    【halcon】学习记录
    【QT】常用类
    【QT】宏
    机器视觉名词解释
    单元测试
    【MFC】VS2017新建完MFC后,没有界面,只有代码
    【MFC】学习与问题整合
    函数重载(overload)和函数重写(override)
    工作记录+反思
    【转】MapReduce:默认Counter的含义
  • 原文地址:https://www.cnblogs.com/zengsf/p/9601595.html
Copyright © 2011-2022 走看看