Python 如何在不使用列表、字典或集合的情况下不断地向字符串添加用户输入?
我有一个程序,提示用户在猜测游戏中进行猜测,我需要该程序以某种方式保存值,以防止用户再次猜测 例如,如果用户第一次猜测输入“a”,第二次猜测输入“b”,我需要程序来存储这些信息,并告诉用户它们已经被使用过 猜测总是单个字符。我不允许使用列表、字典或集合 我知道我应该连接字符串,但除此之外我一无所知。我想使用if语句或函数,但不确定如何设置它们Python 如何在不使用列表、字典或集合的情况下不断地向字符串添加用户输入?,python,Python,我有一个程序,提示用户在猜测游戏中进行猜测,我需要该程序以某种方式保存值,以防止用户再次猜测 例如,如果用户第一次猜测输入“a”,第二次猜测输入“b”,我需要程序来存储这些信息,并告诉用户它们已经被使用过 猜测总是单个字符。我不允许使用列表、字典或集合 我知道我应该连接字符串,但除此之外我一无所知。我想使用if语句或函数,但不确定如何设置它们 我还认为我需要像variable+=variable这样的东西。有什么建议吗?如评论中所述,您真的应该使用一套。下面介绍如何使用字符串连接 guesses
我还认为我需要像
variable+=variable
这样的东西。有什么建议吗?如评论中所述,您真的应该使用一套。下面介绍如何使用字符串连接
guesses = ""
guess = input("guess: ")
if guess in guesses:
print("already used")
else:
guesses += guess
您可以使用
集合
和简单的while循环
:
guesses = set()
while True:
guess = input("Please enter a guess: ")
if guess in guesses:
print("Sorry you have already guessed: %s" % guess)
else:
print("You guessed: %s" % guess)
guesses.add(guess)
用法示例:
Please enter a guess: 5
You guessed: 5
Please enter a guess: 5
Sorry you have already guessed: 5
Please enter a guess:
如果您使用的是C#您可以使用StringBuilder(使用System.Text;),试试看
在这里,一个集合将是正确的解决方案。你为什么不想用一个呢?猜测总是单个字符吗?@Blorgbeard我假设这是第三方(咳嗽老师咳嗽)对他们施加的限制猜测总是单个字符。不允许使用集合,我想知道如何以尽可能简单的方式使用集合。我尝试过“for”,但我需要稍后的解决方案。我制作的if设置不正确。我不打算发布代码,因为老师希望我们不要,我同意他们的观点,因为这样其他人就可以查找并复制代码,不能使用集合。Thank thoughis必须是字符串连接如果你想使用
列表(python的数组)而不是set
更改行:guesses=set()
到guesses=[]
和行:guesses。添加(guess)
到guesses.append(guess)
谢谢,但我正在使用python!
StringBuilder guesses = new StringBuilder();
guesses.Append("a");
bool hasGuess = guessese.ToString().Contains("a");