2016-09-01 2 views
-1

Так инструкция для задания является этотДобавление списка проверки и удалить из списка в Python

Распечатать простой набор инструкций, которые будут предлагать пользователям выбор ключей, чтобы открыть дверь.

Таким образом, цели, которые, я думаю, достигнут этого.

провести инвентаризацию [ключи радуги]

печати инвентарь (у вас есть эти ключи)

просит угадать ключ, который откроет дверь

будет проверять инвентарь и если это красный ключ будет напечатан «открыт»

еще распечатать продолжить гадать и удалить ключ из инвентаря

Это то, что у меня есть до сих пор. Мне не удалось выяснить, как добавить и проверить инвентарь.

keepGuess = True 
correctKey = "red" 

while keepGuess: 
    guess = raw_input("Guess the key to open the door: ") 

    if guess == correctKey: 
      print ("You may enter") 
      keepGuess = False 
    else: 

     print ("Keep guessing") 

Спасибо, что помогли мне. Вот конечный результат

keepGuess = True 
correctKey = "blue" 
keys = ["red", "orange", "yellow", "green", "blue", "indigo", "violet"] 

print keys 
print 

while keepGuess: 
    guess = raw_input("Which key will open the door? ") 

    if guess == correctKey: 
      print ("You may enter") 
      keepGuess = False 
    else: 
     if guess in keys != "blue": 
      keys.remove(guess) 
      if guess not in keys: 
       print 
       print ("The key didn't open the door.") 
       print ("Keep guessing") 
       print 
       print keys 
       print 

, которая печатает это

['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'] 

Which key will open the door? red 

The key didn't open the door. 
Keep guessing 

['orange', 'yellow', 'green', 'blue', 'indigo', 'violet'] 

Which key will open the door? red 
Which key will open the door? blue 
You may enter 
+0

Зачем вам нужен инвентарь вообще? Что произойдет, если у них нет красного ключа? Что произойдет, если они выберут ключ, которого у них нет? – Prune

+0

Что значит добавить и проверить инвентарь? – Harrison

ответ

0

Вы очень близко. Вы можете просто инициализировать пустой список для хранения инвентаря. Когда кто-то догадывается о ключе, который вы просто добавляете в список. Конечно, мы проверим, есть ли угаданный ключ уже в инвентаре, и если да, мы его не добавим.

keepGuess = True 
correctKey = "red" 
inventory = [] 

while keepGuess: 
    guess = raw_input("Guess the key to open the door: ") 

    if guess == correctKey: 
      print ("You may enter") 
      inventory.append(guess) 
      keepGuess = False 
    else: 
     if guess not in inventory: 
      inventory.append(guess) 
     else: 
      print ("You have already added this key to your inventory.") 
     print ("Keep guessing") 

Вот тест:

Guess the key to open the door: blue 
Keep guessing 
Guess the key to open the door: blue 
You have already added this key to your inventory. 
Keep guessing 
Guess the key to open the door: red 
You may enter 
+0

Я думаю, что это заполняет необходимые результаты для этих заданий. Я хочу добавить что-то, что отображает инвентарь и проверять заглавные цвета, но вам не нужно помогать мне в этом. Спасибо за помощь! – AerialAtom

+0

@AerialAtom Нет проблем. Если вы столкнетесь с любыми блокпостами, не стесняйтесь просто отвечать на этот комментарий, и я отвечу :) – Harrison

0

Не имея больше информации о вашей проверке ошибок, я не могу быть уверен, что я решить эту проблему. Тем не менее, я думаю, что вы хотите сохранить простой список ключей, таких как:

door_key_inv = ["red", "yellow", "paisley-print chartreuse"] 

Вы начинаете список как [] (т.е. пустой) и добавлять ключи, как они нашли.

Теперь, когда пользователь вводит предположение, что вам нужно сделать две проверки:

  1. Является ли это ключевой цвет в инвентаре? Если это так, перейдите к шагу 2; если нет, напечатайте предупреждение.

    если догадка в door_key_inv:

  2. Является ли это правильный ключ? Если это так, откройте дверь и разбейте петлю.

  3. Петля назад, чтобы получить следующее предположение.

Это то, что вам нужно?

Смежные вопросы