如何将Python列表中的元素移动到列表中的另一个位置(而不是结尾)

时间:2017-11-10 01:14:39

标签: python string list

我有一个字符串“cab”我希望我的程序返回“abc”

因为Python字符串是不可变的,所以我将其转换为列表,但我似乎只能将第一个元素移到Python的列表末尾。如何指定我想在列表中移动此元素的位置?

1 个答案:

答案 0 :(得分:0)

如果你只需要交换列表中两个项目的位置,你可以使用元组赋值来完成。

s = ['c','a','b']
s[0],s[1] = s[1],s[0]
print(''.join(s))
# prints:
acb

如果您有更长的列表,并且想要将元素移动到特定位置,则可以使用popinsert

要将'w'移至索引5,转发至索引2,您可以执行以下操作:

s = list('helloworld')

s.insert(2, s.pop(5))

print(''.join(s))
# prints:
hewlloorld

要将索引1处的'e'向后移动到索引7,您可以使用:

s = list('helloworld')

s.insert(7, s.pop(1)) 

print(''.join(s))
# prints:
hlloworeld