我想就访问存储在列表中的数据的问题提出一些建议。在
我的列表如下:
my_list = [['RN1', 200, 0.55], ['RN2', 0.8, 0.44], ['RN3', 0.2, 0.01]]
列表是根据内部列表的第三个元素排序的。在
我想做的是:
如果第一个元素的内部列表大于0,则创建第三个更大的内部列表
^{pr2}$如果是真的会给出:
new_list = [['RN1', 200]]
如果没有,我想向my_list[0][2]
元素添加第二个内部列表的相应元素:
my_list[0][2] + my_list[1][2]
并检查此值是否大于0.9
。
如果是,我想停止循环,将第二个内部列表的前2个元素添加到我的新列表中:
new_list = [['RN1', 200], ['RN2', 0.8]]
如果不继续添加元素,直到达到0.9
的阈值。在
当然这只是一个例子。我真正的列表可以大得多,而且这个过程应该是迭代的。在
我试过不同的可能性,但都不管用。例如,我做过:
sum_percentage = 0.0
new_list =[]
for i in old_list:
if sum_percentage <= 0.9:
sum_percentage = sum_percentage + i[2]
new_list.append([i[0], i[1]])
其他的变种…现在我被卡住了。在
有什么提示吗?在
非常感谢
这会帮你完成任务:
我认为这是不言自明的,但如果你有什么困惑,请告诉我,我会扩展这个答案。在
相关问题 更多 >
编程相关推荐