我正在尝试制作python数学服务器。用户(客户端)可以将包含操作数和运算符的消息发送到服务器。服务器应接收并进行计算,并将结果发送回去。但是我的服务器由于某种原因没有发回结果
这是我的client.py文件
import socket
host = socket.gethostname()
port = 5000
client_socket = socket.socket()
client_socket.connect((host,port))
r = "no"
while r != "exit":
op1 = input('enter operand 1:')
op2 = input('enter operand 2:')
op = input('enter operator:')
client_socket.send(op1.encode())
client_socket.send(op2.encode())
client_socket.send(op.encode())
result = client_socket.recv(1024).decode();
print("answer:",result)
r=input("enter exit to stop:")
client_socket.close()
这是我的server.py文件
import socket
host = socket.gethostname()
port = 5000
server_socket = socket.socket()
server_socket.bind((host,port))
server_socket.listen(1)
conn,address = server_socket.accept()
while True:
op1 = conn.recv(1024).decode()
if not op1:
break;
op2 = conn.recv(1024).decode()
op = conn.recv(1024).decode()
if op == '+':
message = int(op1) + int(op2)
elif op =='-':
message = int(op1) - int(op2)
elif op =='*':
message = int(op1) * int(op2)
else : message = int(op1) / int(op2)
conn.send(message.encode())
server_socket.close()
这两个文件都成功运行,没有任何错误,但是服务器没有将任何结果返回给客户端