Простой, но вам, вероятно, не нужен цикл for
. Вот простой пример использования словаря:
answers = {}
count = 1
while True:
ans = input("What would you like to add to your soup? ")
if ans.lower() == 'nothing':
break
answers['q' + str(count)] = ans
count += 1
print(answers)
У нас есть бесконечный цикл (while True
), но брейк-аут, когда пользователь вводит «Ничего». У вас этого нет, но в большинстве приложений вам понадобится нечто подобное.
Пример запуска:
What would you like to add to your soup? carrots
What would you like to add to your soup? peas
What would you like to add to your soup? chicken
What would you like to add to your soup? noodles
What would you like to add to your soup? nothing
{'q4': 'noodles', 'q2': 'peas', 'q1': 'carrots', 'q3': 'chicken'}
Использование словаря вы можете использовать любые имена, которые вы хотите, но мне интересно, если вам действительно нужны эти имена, и почему они вам нужны. Обычно достаточно просто добавить ответы в список.
answers = []
while True:
ans = input("What would you like to add to your soup? ")
if ans.lower() == 'nothing':
break
answers.append(ans)
print(answers)
Как вы можете видеть, код намного проще и прост в использовании. Результатом примера будет:
['carrots', 'peas', 'chicken', 'noodles']
Используйте словарь для имен. – cdarke
Является ли ваш вопрос относительно структуры такого цикла for в python или вы спрашиваете о том, как хранить неопределенное количество ответов? – CorbinMc
Я хочу хранить неопределенное количество ответов, но для каждого из них должен быть отдельный вопрос. @CorbinMc – BlizzardGizzard