在循环中创建多个变量

Creating multiple variables in a loop

我有一个程序要求用户提出一个问题然后输入答案。现在我让它要求用户输入 5 个问题和答案。所以基本上它会询问用户一个问题及其答案 5 次。我真正希望它做的是询问用户他们想输入多少个问题,然后基于它向用户呈现 "type your question" 和 "type your answer" 并将这些东西存储为变量(即"q1" 和 "a1" 并根据他们想输入的 questions/answers 的数量重复),这样我就可以稍后在程序的打印语句中使用这些变量。我正在考虑使用带有继续条件的 while 循环,直到并倒数到 0,然后循环结束,但我如何不断创建新变量?

`   oneistart= raw_input('What is the first question: ')
oneiend= raw_input('What is the first answer: ')

使用字典怎么样?

d = dict()  # Creates an empty dictionary

oneistart = raw_input('What is the first question: ')
oneiend = raw_input('What is the first answer: ')

d[oneistart] = oneiend  # updates the dictionary with new key-value (or updates existing value associated to a key

此外,如果您调用 d.values(),您将获得所有值(即答案)的列表,您可以看到您得到了多少答案?还有其他与字典对象关联的函数,您可以通过阅读文档来研究这些函数(您的任务!)。

这是你的想法吗?

我认为,比在 python 中创建动态变量更好,将其保存为类似字典的列表。

lis = []
n = int(raw_input("How many? "))
for i in xrange(n):
    q = raw_input("enter q: ")
    a = raw_input("enter a: ")
    lis.append({"q"+str(i+1): q, "a"+str(i+1): a})
print lis
>>>[{'q1': 'ques1', 'a1': 'ans1'}, {'q2': 'ques2', 'a2': 'ans2'}]