逐个打印字典的值

2024-10-05 14:30:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个必须在字典中“循环”的函数。字典的内容包含4个问题,我想逐一询问我的用户。 从第一个问题开始,我想问我字典里所有的问题。当所有问题都被问到时,我希望我的函数停止。我试图寻找我正在寻找的答案,但不幸的是没有任何结果。。 我还创建了一个图表,解释了我要编写的算法。请参阅下面的链接: https://i.stack.imgur.com/aNWUq.png

我拥有的代码:

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() 

我是新来的,我希望我对你们的问题解释得足够好!所有的帮助将不胜感激


Tags: or函数if字典maindefcounterlist
2条回答

我认为这将满足您的要求:

questions = {'alpha? ': 'y', 'beta? ': 'n'}

for q,a in questions.items():
    while input(q).lower() != a:
        print("WRONG!")

我不能复制你的全部代码,但给你一个背景。假设myDict是您问题的字典,这样您就可以迭代问题的键,并使用if进行验证,如下所示:

for question in myDict.keys():
  myAnswer = input(question)
  if myAnswer # Continue validation

相关问题 更多 >