如何以更加python-ic的方式编写以下代码?
list_1 = [1,2,3,4]
list_2 = [2,4]
list_index = 0
list_3 = [0 for i in range(len(list_1)+len(list_2))]
for index in range(6):
if index in list_2:
list_3[index] = -1
else:
list_3[index] = list_1[list_index]
list_index += 1
所以list_3将包含= [1,2,-1,3,4,-1]
答案 0 :(得分:0)
我怀疑这就是你要找的东西:
values = [2,5,8,3,5,7]
indexes = [0,3,5]
result = []
for i,v in enumerate(values):
if i in indexes:
result.append(-1)
result.append(v)
else:
result.append(v)
print(result)
我不确定预期的确切逻辑,但这可能是一个好的开始。
答案 1 :(得分:0)
嗯,这是你做错的一些事情:
list_3 = [0 for i in range(len(list_1)+len(list_2))]
最好写成
list_3 = [0] * (len(list_1)+len(list_2))
一般情况下,我不明白您尝试使用代码实现的目标。它的作用似乎非常复杂。