您现在的位置是:首页 > 文章详情

Python socket 实现服务端和客户端数据传输(TCP)

日期:2019-07-22点击:578
  • 服务器端

    import socket
    
    #创建一个socket对象
    socket_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    host = "127.0.0.1"
    port = 9999
    #绑定地址
    socket_server.bind((host, port))
    #设置监听
    socket_server.listen(5)
    # socket_server.accept()返回一个元组, 元素1为客户端的socket对象, 元素2为客户端的地址(ip地址,端口号)
    client_socket, address = socket_server.accept()
    
    #while循环是为了让对话持续
    while True:
        #接收客户端的请求
        recvmsg = client_socket.recv(1024)
        #把接收到的数据进行解码
        strData = recvmsg.decode("utf-8")
        #设置退出条件
        if strData == 'q':
            break
        print("接收: %s" % strData)
        #输入
        msg = input("发送: ")
        #发送数据,需要进行编码
        client_socket.send(msg.encode("utf-8"))
    #关闭服务器端
    socket_server.close()
  • 客户端

    import socket
    #创建一个socket对象
    client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
    host = "127.0.0.1"
    port = 9999
    #连接服务端
    client.connect((host, port))
    
    while True:
        send_msg = input("发送: ")
        #设置退出条件
        if send_msg == "q":
            break
        send_msg = send_msg
        #发送数据,编码
        client.send(send_msg.encode("utf-8"))
        #接收服务端返回的数据
        msg = client.recv(1024)
        #解码
        print("接收:%s", % msg.decode("utf-8"))
    #关闭客户端
    client.close()
    • 流程图
      20190215170457219

    图片来源:https://blog.csdn.net/slavik_/article/details/82430717
    参考链接:时光不写博客-Python socket

原文链接:https://yq.aliyun.com/articles/710443
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章