套接字的工作流程

服务端   例子:

复制代码
 1 import socket
 2 
 3 phone = socket.socket(socket.AF_INET,
 4                       socket.SOCK_STREAM)  # socket.AF_INET代表网络通信,socket.SOCKET_STREAM代表基于tcp协议 相当于买了一个手机
 5 phone.bind(('127.0.0.1', 8000))  # 绑定手机号
 6 phone.listen(5)  # 表示可以有几个电话等着。当你正在接电话的时候,可以有几个电话可以打进来
 7 print(123456)
 8 conn, addr = phone.accept()  # 等电话  返回的是一个元祖 conn 表示返回的链接  addr 表示来电的地址(对方的手机号)
 9 print(4545454)
10 data = conn.recv(1024)  # 1024表示可以收到的长度
11 print('客户端发来的信息',data.decode())    # 注意套接字收发的都是二进制
12 conn.send(data.upper())
13 conn.close()
14 phone.close()
复制代码

客户端   例子:

复制代码
1 import socket
2 
3 phone = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  # 买手机
4 phone.connect(('127.0.0.1', 8000))  # 拨打电话
5 phone.send('caiheng'.encode())
6 data = phone.recv(120)
7 print(data.decode())
复制代码
原文地址:https://www.cnblogs.com/vincent-sh/p/13168167.html