过滤器
用三个参数定义一个名为filterIn的函数。传递给函数的第一个参数应该是字典列表(数据),第二个参数是字符串(字典键),第三个参数是另一个字符串(字典值)。此函数必须返回输入列表中包含所示内容的所有词典的列表关键:价值配对。你知道吗
我该如何着手解决这个问题?
这就是我目前所拥有的。你知道吗
def filterIn (data, key , x):
result = []
for i in data:
if i == (key, x):
return (result.append(key, x))
Tags:
尝试以下操作:
“for i in data”将在变量“i”中返回字典,而不是键值对,因此必须检查字典中是否存在键值对。您可以通过调用'get'方法来实现这一点,如果字典中不存在键,该方法将返回None。然后必须将整个字典附加到结果中,而不仅仅是键值对。你知道吗
希望这有帮助
这里有几个问题:
在执行
for i in data
时,因为data
是词典列表,所以i
现在是词典。所以,你的台词i == (key, x)
没有意义。它应该看起来像:(key, x) in i.items()
,或与i.get(key) == x
一起使用get
方法。您希望返回具有此对的词典列表,因此您希望在
result
列表中附加i
。所以你的行result.append(key, x)
应该是result.append(i)
这里的
append
缩进是错误的。如果if
子句是True
所以,它应该看起来像:
可简称为:
相关问题 更多 >
编程相关推荐