zoukankan      html  css  js  c++  java
  • python3 UDP协议下的socket

    ---------------------------------------udp_server.py---------------------------------------
    
    # coding:utf-8
    import socket
    
    udp_server = socket.socket(type=socket.SOCK_DGRAM)  # 创建socket对象,DGRAM:datagram 数据报文,UDP协议通信
    ip_port = ("127.0.0.1", 8001)
    udp_server.bind(ip_port)  # 绑定IP和端口号
    from_client_msg, client_addr = udp_server.recvfrom(1024)  # 接收来自客户端的消息
    print("来自客户端的消息:", from_client_msg.decode("utf-8"))
    server_input = input(">>>: ").strip()
    udp_server.sendto(server_input.encode("utf-8"), client_addr)  # 给客户端发送消息
    udp_server.close()  # 关闭连接
    
    
    ---------------------------------------udp_client.py---------------------------------------
    
    # coding:utf-8
    import socket
    
    udp_client = socket.socket(type=socket.SOCK_DGRAM)  # 创建socket对象,DGRAM:datagram 数据报文,UDP协议通信
    ip_port = ("127.0.0.1", 8001)
    client_input = input(">>>: ").strip()
    udp_client.sendto(client_input.encode("utf-8"), ip_port)  # 给服务端发送消息
    from_server_msg, server_addr = udp_client.recvfrom(1024)  # 接收来自服务端的消息,最大为1024B
    print("来自服务端的消息:", from_server_msg.decode("utf-8"))
    udp_client.close()  # 关闭连接
    
    
    UDP练习的需求是这样的:
    1、服务端需要提供的服务有:接收消息(时间格式的字符串)、将我的本地的时间转换成接收到的消息的格式(也就是个时间格式的字符串)、发回给客户端。
    2、客户端自行想一下怎么写。
    
    ---------------------------------------practice_udp_server.py---------------------------------------
    
    # coding:utf-8
    import socket
    import time
    
    udp_server = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ("127.0.0.1", 8001)
    udp_server.bind(ip_port)
    from_client_msg, addr = udp_server.recvfrom(1024)
    print("来自客户端的消息:", from_client_msg.decode("utf-8"))
    udp_server.sendto(time.strftime("%Y-%m-%d %X").encode("utf-8"), addr)
    udp_server.close()
    
    
    ---------------------------------------practice_udp_client.py---------------------------------------
    
    # coding:utf-8
    import socket
    
    udp_client = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ("127.0.0.1", 8001)
    client_input = input("格式化时间: ").strip()
    udp_client.sendto(client_input.encode("utf-8"), ip_port)
    from_server_msg, addr = udp_client.recvfrom(1024)
    print("来自服务端的消息:", from_server_msg.decode("utf-8"))
    udp_client.close()
  • 相关阅读:
    3.请问配置JDK时环境变量path和JAVA_HOME的作用是什么?
    2.请尝试安装和配置JDK,并给出安装、配置JDK的步骤。
    1.Java为什么能跨平台运行?请简述原理
    字符集
    Java程序输出打字
    <marquee>,视频和音频的插入,正则表达式
    windows.document对象
    while;do while;switch;break;continue
    循环语句 ,for语句
    PHP判断一个文件是否能够被打开
  • 原文地址:https://www.cnblogs.com/lilyxiaoyy/p/10927264.html
Copyright © 2011-2022 走看看