交换 python 中列表的子列表
swaping sublists of a list in python
我刚开始学习 python,我正在尝试弄清楚如何交换列表的两个部分。假设我有列表
list=["apple","orange","car","bob","jack","peach"]
我想将 "car" 之前的元素与 "bob" 之后的元素交换,所以结果将是
["jack","peach","car","bob","apple","orange"]
这是我尝试过的方法,但没有用:
def swap(list)
firstpart=list[:list.index("car")]
secondpart=list[list.index("bob"):]
middlepart=list[list.index("car"):list.index("bob")]
secondpart+middlepart+firstpart
但它不会改变列表,我不想使用 return
您应该将合并结果重新分配给 lst
。注意,在切片中,第一个索引是包含的,第二个是不包含的。
def swap(lst):
firstpart=lst[:lst.index("car")]
secondpart=lst[lst.index("bob")+1:]
middlepart=lst[lst.index("car"):lst.index("bob")+1]
return firstpart + middlepart + secondpart
我刚开始学习 python,我正在尝试弄清楚如何交换列表的两个部分。假设我有列表
list=["apple","orange","car","bob","jack","peach"]
我想将 "car" 之前的元素与 "bob" 之后的元素交换,所以结果将是
["jack","peach","car","bob","apple","orange"]
这是我尝试过的方法,但没有用:
def swap(list)
firstpart=list[:list.index("car")]
secondpart=list[list.index("bob"):]
middlepart=list[list.index("car"):list.index("bob")]
secondpart+middlepart+firstpart
但它不会改变列表,我不想使用 return
您应该将合并结果重新分配给 lst
。注意,在切片中,第一个索引是包含的,第二个是不包含的。
def swap(lst):
firstpart=lst[:lst.index("car")]
secondpart=lst[lst.index("bob")+1:]
middlepart=lst[lst.index("car"):lst.index("bob")+1]
return firstpart + middlepart + secondpart