我正在创建一个列表,其项将通过索引号进行映射。我尝试使用list.insert()
方法。但仍然总是将第一个元素添加到第0个索引,而我希望第一个元素位于第一个索引。例如:
somelist=[]
somelist.insert(1,"Jack")
somelist.insert(2,"Nick")
somelist.insert(3,"Daniel")
>>print(somelist[1])
Nick # not Jack
如何在Python中做到这一点?我只能在给定索引处插入元素,然后让列表从索引1开始。
答案 0 :(得分:2)
将某物插入到空列表中时,它将始终从第一个位置开始。解决方法如下:
a.permute(1,0,2).contiguous().view(3, 8)
array([[ 0, 1, 2, 3, 12, 13, 14, 15],
[ 4, 5, 6, 7, 16, 17, 18, 19],
[ 8, 9, 10, 11, 20, 21, 22, 23]])
输出:
somelist=[]
somelist.insert(0,"dummy")
somelist.insert(1,"Jack")
somelist.insert(2,"Nick")
somelist.insert(3,"Daniel")
#print(somelist[1])
print(somelist[1])
答案 1 :(得分:1)
您的清单列表数组为空,这意味着如果索引0中没有项目,则无法将项目添加到索引1。
我的意思是,当您第一次尝试将“ Jack”插入索引1时,它会自动转到索引0,然后将“ Nick”插入索引2,然后转到索引1 ...最后打印索引1,即“尼克”
答案 2 :(得分:1)
如果这样做的话,我认为字典可以有所帮助。
喜欢
d={}
在所需位置插入和插入一样容易
d[1]="Jack"
d[2]="Nick"
d[3]="Daniel"
现在
print( d[1] )
将打印
Jack
这样,您就不必使用伪值。