如何在不使用列表,词典或集合的情况下不断向字符串添加用户输入?

时间:2017-02-06 20:17:29

标签: python

我有一个程序提示用户猜测猜谜游戏,我需要程序保存值,以防止用户再次猜测。

例如,如果用户输入' a'第一次猜测和' b'对于第二个,我需要程序来存储这些并告诉用户他们已经被使用过。

猜测总是单个字符。我不被允许使用列表,词典或集合。

我知道我应该连接这些字符串,但除了我以外,我一无所知。我想使用if语句或函数,但不知道如何设置它们。

我也在想我需要像variable += variable这样的东西。有什么提示吗?

3 个答案:

答案 0 :(得分:2)

正如评论中所提到的,你应该真正使用一套。以下是使用字符串连接的方法。

guesses = ""
guess = input("guess: ")
if guess in guesses:
    print("already used")
else:
    guesses += guess

答案 1 :(得分:1)

您可以使用set和简单的while-loop

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:  

试试here!

答案 2 :(得分:-3)

如果您使用的是C#,则可以使用StringBuilder(使用System.Text;)

        StringBuilder guesses = new StringBuilder();

        guesses.Append("a");
        bool hasGuess = guessese.ToString().Contains("a");