【问题标题】:list insertion in pythonpython中的列表插入
【发布时间】:2015-02-20 07:25:11
【问题描述】:

假设我有两个列表如下:-

a = [9,11,12,13] b = [0,5]

现在,我想创建另一个列表,如果索引等于 b 的任何元素,那么我想在该特定索引处插入 -1 所以在上述情况下,如果 index = 0,5 新列表将包含 [-1,9,11,12,13,-1] 如果上面给出了两个列表作为函数的输入,该怎么做?

【问题讨论】:

  • 听不懂。在a 中的索引 0 处有 9。所以你想将 9 替换为 -1?但是您的预期输出不同。
  • 您尝试了什么来解决您的问题?代码?
  • 基本上我想做以下事情:- 对于 max(b,len(a)) 中的索引如果 b 中的索引 newlist[index] = -1 else newlist[index] = a[count] count +=1 但以更 Python 的方式
  • count显然是从0开始的
  • 我认为你应该更好地组织你的问题。也许给出一个你到目前为止完成的工作示例,以便我们可以与所需的输出进行比较。

标签: python list python-3.x


【解决方案1】:

如果我理解你的问题,我相信这就是你要找的。​​p>

a = [1, 2, 3, 4]
b = [0, 3]

def insert_at_indexes(li, indexes, value):
    for ind in indexes:
        li.insert(ind, value)

insert_at_indexes(a,b,-1)

【讨论】:

  • 是的,但它会为索引产生错误,让我们在上述情况下说 6。
  • 这很容易成为特殊情况。例如,在上述情况下,您希望 b = [0, 7] 发生什么?
  • 我想在这种情况下插入 -1 。但我实际上正在寻找一种单线解决方案。使用 map 或 lambda 的东西。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-03-26
  • 2013-04-19
  • 2021-01-05
  • 2019-03-27
  • 2012-05-08
  • 1970-01-01
  • 2017-06-28
相关资源
最近更新 更多