我有一个像这样的列表
list = [[0, 35], [1,56], [2,65],[3,40],[9,54] ......[99999,56]]
列表结构是嵌套列表,其中第一个元素始终是0到99999之间的整数,第二个元素是某个随机值。
现在,问题是:我想在列表中追加缺少的第一个元素整数ex:在上面的列表4、5,.. 8中,还有更多缺少的元素。 并通过附加的列表,我希望第二个元素作为第二个元素的最大数量。 输出应该像
list = [[0, 35], [1,56], [2,65],[3,40],[4,x], [5,x] ......[99999,56]]
其中x的最大值为[35,56,65,..... 56]。
感谢您查询我的代码,请考虑以下我的代码
def CompleteList (raw_list):
raw_list.sort()
#print len(raw_list)
sequence_num_list = [item[0] for item in my_list]
rtt_list = [item[1] for item in my_list]
rtt_max = max(rtt_list)
#print rtt_max
#print len(sequence_num_list)
packet_lost_list = list(sorted(set(range(0, 100000)) - set(sequence_num_list)))
print ('Packet Lost =%i' %len(packet_lost_list))
packet_lost_with_max_RTT = []
for i in range(len(packet_lost_list)):
packet_lost_with_max_RTT.append([packet_lost_list[i],rtt_max])
#print len(packet_lost_with_max_RTT)
new_list = raw_list + packet_lost_with_max_RTT
print ('Length of new list =%i' %len(new_list))
return new_list
rtt_list表示第二个元素。 packet_lost_list表示称赞列表。
答案 0 :(得分:0)
尝试一下:
list_ = [[0, 35], [1,56], [2,65],[3,40],[9,54] ......[99999,56]]
max_sec_elem = max(i[1] for i in list_)
missing_first_elem = set(range(100000)) ^ set(i[0] for i in list_)
for i in missing_first_elem:
list_.append([i, max_sec_elem])