【问题标题】:Insert values from a short list into a long list将短列表中的值插入长列表
【发布时间】:2021-04-16 05:38:06
【问题描述】:

我的问题是我想将候选列表中的值插入到特定位置的较长列表中,所以我们有 List1 和 List2

List1 = [10, 20, x, 50, x 100, 20, x] 

List2 = [99, 88, 111]

在 List1 中的 x 位置,我想插入 List2 中的一个值(以相同的顺序)。 得到如下的最终结果:

List_result = [10, 20, 99, 50, 88, 100, 20, 111]

我曾尝试遍历不同的列表,但到目前为止还没有取得任何进展。 希望有人能帮帮我!

提前谢谢你

【问题讨论】:

  • 请用您尝试过的代码更新您的问题。

标签: python iterator


【解决方案1】:

一种方法是遍历第一个列表并将元素与x 匹配并替换为第二个列表中的索引:

List1 = [10, 20, 'x', 50, 'x', 100, 20, 'x']

List2 = [99, 88, 111]

i = 0
for indx, l1 in enumerate(List1):
    if 'x' == l1 :
        List1[indx] = List2[i]
        i += 1
print(List1)

输出:

[10, 20, 99, 50, 88, 100, 20, 111]

编辑

另一种创建新列表的方法:

new_lst = []
for x in List1:
    if x != 'x':
        new_lst.append(x)
    else:
        for y in List2:
            new_lst.append(y)

print(new_lst)

【讨论】:

    猜你喜欢
    • 2014-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-20
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多