我有这样的数字:
a = [3, 4, 5, 7, 2, 8, 6, 9, 1]
我希望将此号码放在[2, 3, 4, 5, 7, 8, 6, 9, 1]
答案 0 :(得分:1)
一种方法是使用list.insert
和list.pop
。
a = [3, 4, 5, 7, 2, 8, 6, 9, 1]
a.insert(0, a.pop(4))
# [2, 3, 4, 5, 7, 8, 6, 9, 1]
这将删除位置4中的项目并将其移动到位置0.请记住,Python中的索引从0开始。
Python Data Structures documentation中可用的列表方法的详细信息。
答案 1 :(得分:0)
您可以使用remove
(删除列表中元素的第一个实例)和insert
(在您喜欢的任何位置插入元素):
a.remove(2)
a.insert(0, 2) # 0 means insert at the first position in the list
但是,如果您使用的是remove
,请注意,如果您要删除的元素不在列表中,则代码会引发ValueError
。因此,如果您不确定某个元素是否在您的列表中,则应在使用remove
之前进行检查:
if 2 in a:
a.remove(2)
a.insert(0,2)
答案 2 :(得分:0)
我会使用列表索引
> [a[4]]+a[:4]+a[4+1:]
[2, 3, 4, 5, 7, 8, 6, 9, 1]
答案 3 :(得分:0)
除了@jpp answer之外,如果你想在列表中动态获取数字2的索引值,你可以执行以下操作:
a.insert(0, a.pop(a.index(2)))
a.index(2)
- 会在列表中找到(第一次出现)第2号的索引(在这种情况下会返回4)
a.pop(4)
- 将从列表中删除第4个值并将其返回(返回2)
a.insert(0, 2)
- 将值2插入索引0的列表中。