重复输入字典循环

时间:2016-10-31 23:24:07

标签: python dictionary

“创建一个字典,其键是名称,其键的值是具有该名称的人最喜欢的食物,如下所示: - 该程序应提示输入名称和喜欢的食物,并继续输入姓名和喜爱的食物,直到用户输入一个空字符串作为名称。“

到目前为止,我有:

mydict=dict()
def favorite_food_name():
    name=input(str("name:"))
    food=input(str("food:"))
    mydict[name]=food       
    print(mydict)
favorite_food_name()

但我不能让代码在任何循环中重复。你会用什么样的循环?

1 个答案:

答案 0 :(得分:0)

使用While True循环,并在输入后测试name的值。

顺便提一下,编码时的一些提示:

  • 您不需要str("name:"),因为"name:"str
  • 如果没有必要,将mydict放在功能部分中,使用return语句,不要将其用作模型级别
  • 你可以做更多来验证输入,在这里我调用strip函数来删除输入错误。

以下是示例代码:

def favorite_food_name():
    mydict = dict()
    while True:
        name = input("name:")
        name = name.strip()
        if name == '':
            break
        food = input("food:")
        food = food.strip()
        mydict[name] = food
    # print(mydict)
    return mydict


if __name__ == '__main__':
    mydict = favorite_food_name()
    print(mydict)