zoukankan      html  css  js  c++  java
  • 3.网络编程-tcp的服务器简单实现

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time    : 2019/1/13 22:03
    # @Author  : ChenAdong
    # @email   : aiswell@foxmail.com
    
    
    # 实现tcp服务器轮流向多个客户端服务(同时只有一个客户端接受服务)
    
    import socket
    
    def tcp_server():
       # 创建套接字
       socket_serve = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
       
       # 绑定端口,一般ip地址不绑定,直接给空值;并且地址是元组形式
       socket_serve.bind((" ", 8081))
       
       # 监听端口
       socket_serve.listen(3)
       
       while True:
          new_socket, client_addr = socket_serve.accept()
          # 阻塞,直到有客户端连接,多个用户连接时候,组成一个列表,下面再逐个拿出每个用户地址,创建新的套接字,进行通信
          while True:
             recv_data = new_socket.recv(1024)
             # 如果客户端关闭,会自动发送空值给服务器,可以用这个判断客户端关闭;这里当客户端关闭时候,服务器也关闭套接字
             # 无法直接发送一个空值
             if recv_data:
                new_socket.send("hello".encode("utf-8"))
             else:
                break
          new_socket.close()
    
    
    if __name__ == "__main__":
       tcp_server()
    

      

  • 相关阅读:
    if判断语句和循环语句
    列表,元祖,字典的详细概述
    day10
    day09
    day08
    java---基本程序设计总结
    day07
    day06
    day05
    day04
  • 原文地址:https://www.cnblogs.com/chenadong/p/10264905.html
Copyright © 2011-2022 走看看