Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将两个相邻列表元素转换为元组并保留列表其余部分的Pythonic方法_Python_List_Tuples - Fatal编程技术网

将两个相邻列表元素转换为元组并保留列表其余部分的Pythonic方法

将两个相邻列表元素转换为元组并保留列表其余部分的Pythonic方法,python,list,tuples,Python,List,Tuples,我正在寻找一种优雅的方式来转化 lst = [A, B, C, D, E..] 到 考虑到我想在索引2和3上这样做,但保留列表。有没有一种优雅的方式来实现这一点?我正在查看lambda函数,但没有看到它。只需在适当的位置进行更改: lst[2:4] = [tuple(lst[2:4])] 切片分配确保我们用分配右侧列表的内容替换旧元素,列表只包含一个元组 演示: 只需更改到位: lst[2:4] = [tuple(lst[2:4])] 切片分配确保我们用分配右侧列表的内容替换旧元素,列表只

我正在寻找一种优雅的方式来转化

lst = [A, B, C, D, E..]

考虑到我想在索引2和3上这样做,但保留列表。有没有一种优雅的方式来实现这一点?我正在查看lambda函数,但没有看到它。

只需在适当的位置进行更改:

lst[2:4] = [tuple(lst[2:4])]
切片分配确保我们用分配右侧列表的内容替换旧元素,列表只包含一个元组

演示:

只需更改到位:

lst[2:4] = [tuple(lst[2:4])]
切片分配确保我们用分配右侧列表的内容替换旧元素,列表只包含一个元组

演示:

您可以使用:

lst[2] = lst[2], lst.pop(3)
或者更一般地说:

lst[i] = lst[i], lst.pop(i+1)
但是,您必须确保这两个索引在避免
索引器
异常中有效。

您可以使用:

lst[2] = lst[2], lst.pop(3)
或者更一般地说:

lst[i] = lst[i], lst.pop(i+1)
但是,您必须确保这两个索引在避免
索引器
异常中有效