zoukankan      html  css  js  c++  java
  • python__系统 : socket_UDP相关

    socket.socket() 可以创建一个套接字:

    from socket import *
    from threading import Thread
    
    
    udp_socket = None
    dest_ip = ''
    dest_port = 0
    
    
    def recvData():
        while True:
            recv_info = udp_socket.recvfrom(1024)   #接收包最大字节1024
            print('
    >> %s : %s' %(str(recv_info[1]), recv_info[0].decode('GBK')) )
            print('<< ')
    
    def sendData():
        while True:
            send_info = input('<< ')
            udp_socket.sendto(send_info.encode('GBK'), (dest_ip, dest_port)) #发送包  python3 只能发送字节类型 2.x 可以发送字符串
    
    def main():
    
        global udp_socket
        global dest_ip
        global dest_port
    
        dest_ip = input('对方的ip: ')
        dest_port = int(input('对方的端口: '))
    
        udp_socket = socket(AF_INET, SOCK_DGRAM) #创建socket对象
        udp_socket.bind(('', 9876))   #端口绑定
    
        tr = Thread(target=recvData)
        ts = Thread(target=sendData)
    
        tr.start()
        ts.start()
    
        tr.join()
        ts.join()
    
    
    if __name__ == '__main__':
        main()

    简单的发送和接收信息的socket程序.

    另: 用 struct.pack() 打包 ,用 unpack() 解包.

    还可以直接广播:

  • 相关阅读:
    appium之模拟坐标方法介绍
    mysql操作数据库常用命令
    appium使用无线连接手机方法
    mysql数据之增删改操作
    mysql之子查询与分组查询
    selenium之多个窗口之间切换
    selenium之内嵌网页iframe切换
    CF103E
    CF724E
    光伏元件
  • 原文地址:https://www.cnblogs.com/cccy0/p/9091033.html
Copyright © 2011-2022 走看看