gpt4 book ai didi

python - 如何填补元组列表中的空白

转载 作者:行者123 更新时间:2023-12-03 18:36:38 25 4
gpt4 key购买 nike

我有一个如下所示的元组列表:

[(1, 'Red'), (2, 'Yellow'), (6, 'Pink'), (7, 'Blue'), (8, 'Green')]

元组中的数字代表索引。但是,由于我的输入文件中缺少某些索引,我需要在列表中插入一些元组,并使列表如下所示:
[(1, 'Red'), (2, 'Yellow'), (3, None), (4, None), (5, None), (6, 'Pink'), (7, 'Blue'), (8, 'Green')]

如果你们中的一些人有任何想法,如果您能抽出时间发表评论,我将不胜感激。

最佳答案

我在这里提出了最简单的实现,但对于大型列表不是很有效:

test = [(1, 'color: Red'), (2, 'color: Yellow'), (6, 'color: Pink'), (7, 'color: Blue'), (8, 'color: Green')]


max_index = max(test, key=lambda item:item[0])[0]

missing_values = []
for i in range(1, max_index + 1):
missing = False
for index, val in test:
if i != index:
missing = True
else:
missing = False
break
if missing:
missing_values.append((i,'color: None'))

new_test = test + missing_values
new_test_sorted = sorted(new_test, key=lambda x:x[0])
print(new_test_sorted)

这给出了:
[(1, 'color: Red'), (2, 'color: Yellow'), (3, 'color: None'), (4, 'color: None'), (5, 'color: None'), (6, 'color: Pink'), (7, 'color: Blue'), (8, 'color: Green')]

关于python - 如何填补元组列表中的空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60850554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com