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

    客户端:

    #-*- coding:utf-8 -*-
    #客户端程序
    import socket
    
    client = socket.socket() #1、创建一个客户端对象
    
    client.connect(('localhost',22332)) #2、连接到服务器
    
    client.send(b'hello') #3、发送数据
    
    data = client.recv(1024) #4、接收数据
    
    print('接受的数据:',data)
    
    client.close() #5、关闭客户端
    

     服务器:

    #-*- coding:utf-8 -*-
    #服务器程序
    import socket
    
    server = socket.socket() #1、创建服务器套接字对象
    
    server.bind(('localhost',22332)) #2、绑定ip和端口
    
    server.listen() #3、让套接字对象处于监听状态
    print("正在监听...")
    
    conn,addr = server.accept() #接收客户端报文
    print("报文来了!")
    print("conn:",conn,"addr:",addr)
    
    data = conn.recv(1024) #接收报文中的数据
    print("客户端的数据:",data)
    
    conn.send(data.upper()) #发送响应报文
    
    server.close() #关闭服务器
    

     执行结果:

    客户端:

    接受的数据: b'HELLO'
    

     服务器:

    正在监听...
    报文来了!
    conn: <socket.socket fd=356, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 22332), raddr=('127.0.0.1', 63173)> addr: ('127.0.0.1', 63173)
    客户端的数据: b'hello'
    [Finished in 3.4s]
    

     后记:

    在sublime3中运行程序时报错

    [Decode error - output not utf-8]

    解决方式如下:

    在插件目录下的User目录下新建一个文件python3.6.sublime-build,内容如下

    {
        "cmd": ["python", "-u", "$file"],
        "file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
        "selector": "source.python",
        "encoding":"cp936"
    }
    
  • 相关阅读:
    ssh或scp到远程电脑,不用输密码
    关于浏览器缓存,cookie , session
    js小tips和小笔记
    Promise对象
    terminal命令
    喜大普奔:我的个人博客www.yxmblog.top
    TCP/UDP常用端口号
    以后可能在博客园写的少了!
    << 转载>>Shell一些强大的命令
    Linux下的简单压缩相关操作
  • 原文地址:https://www.cnblogs.com/leomei91/p/7127679.html
Copyright © 2011-2022 走看看