服务器(server):
import socket
# 1.创建套接字
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 2.绑定端口
server.bind(('127.0.0.1', 7890))
# 3.变为被动监听模式
server.listen(4)
while True:
# 4.等待客户端链接
s_new, addr = server.accept()
print('用户【{}】已经成功连接!!'.format(addr[0]))
while True:
# 5.接受消息
recv_data = s_new.recv(1024)
print('来自【{}】的用户表示: {}'.format(addr[0], recv_data.decode('utf-8')))
if recv_data:
# 6.发送消息
send_data = str(input('请输入想要发送的数据:'))
s_new.send(send_data.encode('utf-8'))
else:
print('用户已经退出!')
break
s_new.close()
# 7,关闭套接字
server.close()
客户端(client):
import socket
# 1.创建套接字
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 2.绑定IP地址和端口
s.connect(('127.0.0.1', 7890))
while True:
# 3.发送数据
send_data = str(input('请输入想要发送的数据:'))
if send_data == 'exit':
break
s.send(send_data.encode('utf-8'))
# 4.接收数据
recv_data = s.recv(1024)
print('服务器反映:【{}】'.format(recv_data.decode('utf-8')))
# 5.关闭套接字
s.close()
运行结果(服务器):
运行结果(客户端):