服务器端(serverse)
import socket #导入scoket模块
sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#生成socket对象,指定协议,和传输协议类型
address = ("127.0.0.1",9090) #地址和端口,元祖的形式
sk.bind(address) # 服务器绑定地址
sk.listen(3) #最大监听数为3个
while 1:
conn,addr = sk.accept() #sk接受的对象赋值给两个变量
print(addr)
while 1: #循环
try:
data = conn.recv(1024) #当conn挂掉后进行异常处理
except Exception:
break
print(str(data,"utf-8")) #打印接受到的内容
if not data:
break
inp = input(">>>")
conn.send(bytes(inp,"utf-8")) #向客户端发送消息
sk.close() #关闭连接
客户端(client)
import socket #导入socket模块
sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #生成对象,指定协议和协议类型
address = ("127.0.0.1",9090) #以元祖的方式创建IP,和端口号
sk.connect(address) #连接指定的socket地址
while 1: #循环
inp = input(">>>")
if inp == "exit":
break
sk.send(bytes(inp,"utf-8")) #发送,
data = sk.recv(1024) #接收
print(str(data,"utf-8")) #打印
sk.close() #关闭