Python 逐个打印字典的值
我正在编写一个必须在字典中“循环”的函数。字典的内容包含4个问题,我想逐一询问我的用户。 从第一个问题开始,我想问我字典里所有的问题。当所有问题都被问到时,我希望我的函数停止。我试图寻找我正在寻找的答案,但不幸的是没有任何结果。。 我还创建了一个图表,解释了我要编写的算法。请参阅下面的链接: 我拥有的代码:Python 逐个打印字典的值,python,dictionary,Python,Dictionary,我正在编写一个必须在字典中“循环”的函数。字典的内容包含4个问题,我想逐一询问我的用户。 从第一个问题开始,我想问我字典里所有的问题。当所有问题都被问到时,我希望我的函数停止。我试图寻找我正在寻找的答案,但不幸的是没有任何结果。。 我还创建了一个图表,解释了我要编写的算法。请参阅下面的链接: 我拥有的代码: import random from time import sleep def vragenLijst(): vragen_list = open("question
import random
from time import sleep
def vragenLijst():
vragen_list = open("questions.txt").readlines()
return vragen_list
def stel_vraag(vragen_list):
vragen_IAT = {
"vraag_1" : str(vragen_list[0]),
"vraag_2" : str(vragen_list[1]),
"vraag_3" : str(vragen_list[2]),
"vraag_4" : str(vragen_list[3])
}
vragen_FICT = {
"vraag_5" : vragen_list[4],
"vraag_6" : vragen_list[5],
"vraag_7" : vragen_list[6],
"vraag_8" : vragen_list[7]
}
vragen_SE = {
"vraag_9" : vragen_list[8],
"vraag_10" : vragen_list[9],
"vraag_11" : vragen_list[10],
"vraag_12" : vragen_list[11]
}
vragen_BDAM = {
"vraag_13" : vragen_list[12],
"vraag_14" : vragen_list[13],
"vraag_15" : vragen_list[14],
"vraag_16" : vragen_list[15]
}
counter_IAT = 0
print("Hier komen de eerste vragen: ")
sleep (2.0)
print()
while vragen_IAT:
antwoord = input(vragen_IAT + "Y/N: ")
for vragen in vragen_IAT:
if antwoord == "y" or antwoord == "Y":
counter_IAT = counter_IAT + 1
print(counter_IAT)
elif antwoord == "n" or antwoord == "N":
counter_IAT = counter_IAT
print(counter_IAT)
else:
print("Dit heb ik niet begrepen.. Vul [Y]es of [N]o in: ")
if antwoord != "y" or antwoord != "Y":
continue
# while vragen_FICT:
# while vragen_SE:
# while vragen_BDAM:
def main():
vragen = vragenLijst()
stel_vraag(vragen)
if __name__ == "__main__":
main()
我是新来的,我希望我对你们的问题解释得足够好!所有的帮助将不胜感激 我不能复制你的全部代码,但给你一个背景。假设
myDict
是您问题的字典,这样您就可以迭代问题的关键点,并使用if
进行验证,如下所示:
for question in myDict.keys():
myAnswer = input(question)
if myAnswer # Continue validation
我不能复制你的全部代码,但给你一个背景。假设
myDict
是您问题的字典,这样您就可以迭代问题的关键点,并使用if
进行验证,如下所示:
for question in myDict.keys():
myAnswer = input(question)
if myAnswer # Continue validation
我认为这将满足您的要求:
questions = {'alpha? ': 'y', 'beta? ': 'n'}
for q,a in questions.items():
while input(q).lower() != a:
print("WRONG!")
我认为这将满足您的要求:
questions = {'alpha? ': 'y', 'beta? ': 'n'}
for q,a in questions.items():
while input(q).lower() != a:
print("WRONG!")
听起来像个XY问题。您的
vragen\u列表已经是一个包含所有问题的列表。在向用户显示它们之前将它们放入词典有什么好处?你可以按索引对它们进行分组(IAT=[0,1,2,3];FICT=[4,5,6,7]…)这里使用一系列问题似乎比使用字典更合理,除非这是一个要求。听起来像是XY问题。您的vragen\u列表已经是一个包含所有问题的列表。在向用户显示它们之前将它们放入词典有什么好处?你可以按索引对它们进行分组(IAT=[0,1,2,3];FICT=[4,5,6,7]…)这里使用一系列问题似乎比使用字典更合理,除非这是一项要求。嘿,伙计!我用了你的解释,它对我有用!我现在只需要研究如何在4个问题之后停止!谢谢你嘿,伙计!我用了你的解释,它对我有用!我现在只需要研究如何在4个问题之后停止!谢谢嘿,谢谢你的评论!我使用了for循环,然后是if语句和我自己的验证。嘿,谢谢你的评论!我使用了for循环,然后使用if语句和我自己的验证。