一种在特定索引中的空List中插入值的方法

时间:2018-06-13 10:57:20

标签: python list insert append extend

有没有办法将特定值插入到特定索引中。列表应该是完全空的

L = []
L.insert(2,177)
print(L)

L应该给出L [,,2]

的值

2 个答案:

答案 0 :(得分:3)

这是不可能的。列表不能有“漏洞”;列表中的每个插槽都必须包含一个值。

您有两种选择:

  1. 使用虚拟值填充列表:

    L = [None] * 3
    L[2] = 177
    # L: [None, None, 177]
    
  2. 使用dict而不是列表:

    L = {}
    L[2] = 177
    # L: {2: 177}
    

    dict是任意值之间的映射,因此它可以毫无问题地处理“漏洞”。

答案 1 :(得分:2)

Python中的iterables必须包含对象。您可以使用None填充列表,直到您想要实际值的地方

l = [None for _ in range(200)]
l[2] = 2
l[177] = 177
  

     

types.NoneType. None的唯一值经常用于表示缺少值,因为默认参数未传递给函数。