python3 socket and client编写
什么是socket
所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)
egg:
Server:
import socket
sk = socket.socket()
ip_port = ('127.0.0.1',9999)
sk.bind(ip_port)
sk.listen()
while True:
conn,address = sk.accept()
conn.send('hello.'.encode())
flag = True
while flag:
data = conn.recv(1024).decode()
print(data)
if data == 'exit':
flag = False
conn.send('sb'.encode())
conn.close()
Client:
import socket
client = socket.socket()
ip_port = ('127.0.0.1',9999)
client.connect(ip_port)
while True:
data = client.recv(1024).decode()
print(data)
inp = input('client:')
client.send(inp.encode())
if inp == 'exit':
break
注:需要注意python3中conn.send()发送的是字节,而不是字符串,所以需要在接收端和发送端分别进行encode()和decode();

浙公网安备 33010602011771号