定义函数周期(plants_d)

时间:2016-11-07 21:37:00

标签: python python-3.x dictionary

  

考虑字典plants_d,其中键是植物的名称,   这些值是对它们浇水频率的描述。搜索   通过所有需要浇水的植物的整个结构   "weekly",将它们放入列表sort()列表中,然后将其返回。

     

plants_d ::浇灌说明的植物名称字典。

     

返回值:需要浇水的植物的排序列表"weekly"

     

测试用例:

>>> weeklies({'shamrock':'weekly', 'cactus':'monthly', 'rose':'weekly', 'succulent':'biweekly'})
['rose', 'shamrock']

>>> weeklies({'fern':'weekly', 'shamrock':'weekly', 'carnation':'weekly'
['carnation', 'fern', 'shamrock']

我知道我需要查看dict[i]== 'Weekly'是否然后将其添加到新列表中,但我不确定如何。我尝试过:

     def weeklies(plant_d):
         plants = {}
         for in in plants_d:
             if dict{i} == 'weekly':
                 plants  = plants.append(i)
         return plants

1 个答案:

答案 0 :(得分:1)

您需要替换:

if dict{i} == 'weekly':

使用:

if dict[i] == 'weekly':

另外替换:

for in in plants_d:

使用:

for i in plants_d:

因为“in”是关键字。

为避免从字典中搜索n次值,您应该使用items()函数。它从字典中创建对列表。 然后你可以迭代它们:

def weeklies(plant_d):
    result = []
    for plant_name, description in plant_d.items():
        if description == "weekly":
            result.append(plant_name)
    return sorted(result)