gpt4 book ai didi

python - 需要处理的数据太多

转载 作者:行者123 更新时间:2023-12-01 02:21:25 26 4
gpt4 key购买 nike

我编写了一个非常简单的程序,它创建一个随机字符串,要求用户输入一个字符串并计算他错过/击中的字母数。一直持续到他猜出随机字符串为止。

出于某种原因,当我尝试运行它时,我收到错误:“需要处理的数据太多”。我以前从未见过此错误,并且真的不知道出了什么问题以及原因。

我很想听听您对此的意见。这是我写的代码:

import random
import string
def cows_and_bulls(real_string, guess_string):
hits = 0
missed = 0
hits_set = []
missed_set = []
for index, letter in enumerate(guess_string):
if real_string[index] == letter:
hits +=1
hits_set.append(letter)
elif letter in real_string and letter not in hits_set:
missed +=1
missed_set.append(letter)
print(hits, missed)
return ("hits:" +str( hits), "missed:" +str( missed))

def main():
random_string = ''.join([random.choice(string.ascii_letters) for n in
range(5)])
guess_string = input("please enter a guess string")
if len(guess_string) != 5 or guess_string.isalpha == False:
print("please enter a new guess")
guess_string = input("please enter a guess string")

win = False
while win is not True:
hits,missed = cows_and_bulls(random_string, guess_string)
if hits == len(random_string):
print("you win!")
win = True
break

if __name__ == '__main__':
main()

print(cows_and_bulls("abcd", "abdz"))

最佳答案

您需要修复您的主要功能。

就目前情况而言,它不会为您提供您想要的行为。如果相同猜测的猜测长度为 5(我在 jupyter 笔记本中得到的行为),像现在这样运行该函数将导致打印命中和未命中的无限循环。根据您用来运行的具体环境,这可能会导致问题。

你的主要内容如下:

def main():
random_string = ''.join([random.choice(string.ascii_letters) for n in
range(5)])
win = False
while win is not True:

guess_string = input("please enter a guess string")
if len(guess_string) != 5 or guess_string.isalpha == False:
print("please enter a new guess")
guess_string = input("please enter a guess string")
if len(guess_string) == 5:
hits,missed = cows_and_bulls(random_string, guess_string)
if hits == len(random_string):
print("you win!")
win = True

应该可以解决这个问题。如果你的主函数看起来像这样,那么你每次玩家没有获胜时都会要求输入,并且循环在获胜后停止。此外,每次猜测错误时,都会提示玩家提供新的输入。

就我而言,这解决了陷入打印相同猜测的命中和未命中的无限循环中的问题。

关于python - 需要处理的数据太多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47922384/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com