这是我的清单:
List1 = [['movies', 0.0], ['minion 2015', 1.0], ['minion 2016', 0.3333333333333333]]
我想恢复与值" 1.0"相关联的元素。谁是" minion 2015"。有可能这样做吗?
一些细节:
我的例子是由于我从脚本中返回了一个值。
这个结果首先显示了一个列表,如list' list1'。
然后,使用条件处理此列表将返回结果项[1.0]
。
我想知道我们是否可以在输出中检索与此元素(1.0)关联的元素"minion 2015"
。
答案 0 :(得分:0)
如果您的意思是想检索,那么这是一个选项。
get_key
定义函数yield from
以生成与此键关联的所有值。
如果您使用的是python3.3或更高版本,则可以使用In [1198]: def get_key(l, key):
...: yield from (v for k, v in l if k == key)
...:
In [1199]: list(get_key(List1, 'minion 2015'))
Out[1199]: [1.0]
语法来缩短功能:
d1 = {'pig':10, 'cow':40, 'sheep':50}
d2 = {'pig':40, 'cow':20, 'sheep':10, 'tiger':30}
d1_total = 100 #sum of the dictionary values
d2_total = 100 #my actual dictionaries have different sums
答案 1 :(得分:0)
是的,可以做到。
我建议你阅读reference。
答案 2 :(得分:0)
您可以使用下面的filter
:
filtered_list = list(filter(lambda i: i[1] == 1.0, my_list))
<强>输出:强>
>>> my_list = [['movies', 0.0], ['minion 2015', 1.0], ['minion 2016', 0.3333333333333333]]
>>> filtered_list = list(filter(lambda i: i[1] == 1.0, my_list))
>>> filtered_list
[['minion 2015', 1.0]]
>>> filtered_list[0][0]
'minion 2015'