zoukankan      html  css  js  c++  java
  • 10.1 socket 编程

    基础通信

    clinet客户端

    #!/usr/bin/env/ python3
    # -*- coding:utf-8 -*-
    """
    @Project: books
    @File  :client.py
    @Author:zy7y
    @Date  :2021/8/2 10:27
    @Desc  : socket 和 Tcp、Udp 打交道
    socket  客户端
    """
    
    import socket
    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 连接服务端,(IP地址,端口)
    client.connect(("127.0.0.1", 8000))
    # 发送给服务端
    client.send("arrds".encode(encoding="utf-8"))
    # 接收服务端返回数据
    data = client.recv(1024)
    
    print(data.decode("utf-8"))
    
    # 关闭
    client.close()
    

    server 服务端 - 单次通信

    #!/usr/bin/env/ python3
    # -*- coding:utf-8 -*-
    """
    @Project: books
    @File  :server.py
    @Author:zy7y
    @Date  :2021/8/2 10:27
    @Desc  :socket  服务端
    """
    import socket
    
    # 类型, 协议,
    server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 绑定地址,端口
    server.bind(("0.0.0.0", 8000))
    # 监听
    server.listen()
    
    # 建立客户端连接,结构得到一个socket 实例用来接收或发送数据
    sock, addr = server.accept()
    
    print(addr)
    # 发送数据给 客户端
    sock.send("server...".encode("utf-8"))
    
    # 获取数据
    data = sock.recv(1024)
    
    print(data.decode(encoding="utf-8"))
    

    单人通信

    client

    #!/usr/bin/env/ python3
    # -*- coding:utf-8 -*-
    """
    @Project: books
    @File  :client.py
    @Author:zy7y
    @Date  :2021/8/2 10:27
    @Desc  : socket 和 Tcp、Udp 打交道
    socket  客户端
    """
    
    import socket
    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 连接服务端,(IP地址,端口)
    client.connect(("127.0.0.1", 8000))
    
    while True:
        re_data = input()
        # 发送给服务端
        client.send(re_data.encode(encoding="utf-8"))
        # 接收服务端返回数据
        data = client.recv(1024)
    
        print(f"服务端说: {data}")
    
    

    server

    #!/usr/bin/env/ python3
    # -*- coding:utf-8 -*-
    """
    @Project: books
    @File  :server.py
    @Author:zy7y
    @Date  :2021/8/2 10:27
    @Desc  :socket  服务端
    """
    import socket
    
    # 类型, 协议,
    server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 绑定地址,端口
    server.bind(("0.0.0.0", 8000))
    # 监听
    server.listen()
    # 建立客户端连接,结构得到一个socket 实例用来接收或发送数据
    sock, addr = server.accept()
    
    # 服服端一直接收
    while True:
    
        # 获取数据
        data = sock.recv(1024)
    
        print(f"客户端说: {data}")
    
        re_data = input()
        # 发送数据给 客户端
        sock.send(re_data.encode("utf-8"))
    
    作者:zy7y
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    Mvc form提交
    FlexiGrid 使用 全选、自动绑定
    Mysql Insert Or Update语法例子
    orderby与groupby同时使用
    SQLSTATE[HY000] [2002] No such file or directory in
    swoole安装
    关于商城分类查询表结构与数据查询
    查询数据库每张表的信息
    php 正则验证
    PHP代码优化
  • 原文地址:https://www.cnblogs.com/zy7y/p/15089173.html
Copyright © 2011-2022 走看看