zoukankan      html  css  js  c++  java
  • python网络编程-udp/tcp通信

    python网络编程-udp通信

    udp服务端:

    import socket
    
    
    def main():
        # 1. 创建socket
        udp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        # 2. 绑定ip
        udp_server_addr = ('127.0.0.1', 1235)
        udp_server_socket.bind(udp_server_addr)
        while True:
            # 3. 接收数据
            recv_data, recv_client_ip_port = udp_server_socket.recvfrom(1024)
            # 4. 打印数据
            print("接收到的数据如下:" + recv_data.decode('utf-8'))
        # 5. 关闭socket
        udp_server_socket.close()
    
    
    if __name__ == '__main__':
        main()
    

    udp客户端

    import socket
    
    
    def main():
        # 1. 创建socket
        udp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        while True:
            # 2. 发送数据
            data = input('请输入要发送的数据:')
            udp_client_socket.sendto(data.encode('utf-8'), ('127.0.0.1', 1235))
        # 3. 关闭socket
        udp_client_socket.close()
    
    
    if __name__ == '__main__':
        main()
    

    tcp 服务端

    import socket
    
    
    def main():
        # 1. 建立socket
        tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # 2. 绑定ip和端口
        ip_address = '127.0.0.1'
        ip_port = 1236
        tcp_server_socket.bind((ip_address, ip_port))
        # 3. 开启监听
        tcp_server_socket.listen(128)
        while True:
            # 4. 等待客户端连接
            new_client_socket, new_client_addr = tcp_server_socket.accept()
            while True:
                # 5. 接收客户端发送过来的请求
                recv_data = new_client_socket.recv(1024)
                print(recv_data.decode('utf-8'))
                # 6. 回送一部分数据给客户端
                new_client_socket.send("Thanks".encode('utf-8'))
            # 7. 关闭套接字
            new_client_socket.close()
        tcp_server_socket.close()
    
    
    if __name__ == '__main__':
        main()
    

    tcp 客户端

    import socket
    
    
    def main():
        # 1. 创建socket
        tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # 2. 建立连接
        ip_addr = '127.0.0.1'
        ip_port = 1236
        tcp_client_socket.connect((ip_addr, ip_port))
        while True:
            # 3. 发送数据
            data = input("请输入要发送的消息: ")
            tcp_client_socket.send(data.encode('utf-8'))
        # 4. 关闭socket
        tcp_client_socket.close()
    
    
    if __name__ == '__main__':
        main()
    
  • 相关阅读:
    linux系统调用是通过软中断实现的吗
    Linux系统调用怎么和内核或底层驱动交互的
    strace命令
    linux 用户态和内核态以及进程上下文、中断上下文 内核空间用户空间理解
    C语言string.h常用函数总结
    shall的过去式和should怎么区分
    P(Y|X) 和 P(X,Y)
    Sourceinsight最佳配色方案及颜色字体调整方法
    float 为什么可以表示很大的整数
    协方差矩阵
  • 原文地址:https://www.cnblogs.com/v01cano/p/12560255.html
Copyright © 2011-2022 走看看