gpt4 book ai didi

python - While 在服务器和客户端之间循环 (Python)

转载 作者:行者123 更新时间:2023-12-01 05:00:15 25 4
gpt4 key购买 nike

我正在制作一个在空闲状态下在服务器和客户端之间运行的猜数字游戏。我使用两个 while 循环,如下所示:

服务器:

l = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

#Generate random number
integer = random.randrange(1, 10)

l.bind(("127.0.0.1", 4001))
l.listen(5)

while True:
(s, ca) = l.accept()

#Send instruction to client
s.send("What is your guess? ".encode())

#Receive guess from client
y = s.recv(4096).decode()

#Break out of the loop if the guess was correct
if int(y) == integer:
break

s.close()

客户:

#User gets 3 guesses
for x in range(0, int(chances)):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.connect(("127.0.0.1", 4001))

#Get instruction from server and make a guess
y = input(s.recv(80).decode())

#Guess a number and send it to the server
s.send(y.encode())

s.close()

用户应该有 3 次机会猜对数字。然而,由于某种原因,当前的设置只允许用户猜测一次。此后,服务器的 while 循环停止发送指令,因此用户无法进行猜测。我该如何解决这个问题?

最佳答案

我发现的唯一问题是该行

s.send(y.encode())

引发了异常,应该改为

s.send(str(y).encode())

其他一切都运行良好(它按预期给了我 3 个猜测)

关于python - While 在服务器和客户端之间循环 (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26402016/

25 4 0
文章推荐: jquery - 将数据库内容加载到变量中
文章推荐: jquery - 在 Jquery Mobile 中获取 div 元素的宽度
文章推荐: java - 使用 Spring 配置 SOAP 处理程序
文章推荐: jquery - 未捕获的类型错误 : Object # has no method 'replace' line 75