我有以下 list

我需要以下输出[(100200),(200300),(300400)]

我做了一些研究并使用了itertools.这是我的图书馆

[c代表itertools中的c.组合(lst,2)]

如果我使用上面的代码,我会得到下面的输出,它会产生所有的组合.

我不想要所有的组合,我只想要向前移动的组合

推荐答案

如果您使用的是Python 3.10,那么可以使用itertools.pairwise().否则,可以使用zip():

lst = [100,200,300,400]
list(zip(lst, lst[1:]))

这将产生:

[(100, 200), (200, 300), (300, 400)]

Python相关问答推荐

Django REST Framework:无法正确地将值注释到多对多模型,不断得到错误字段名称字段对模型无效'<><>

海上重叠直方图

幂集,其中每个元素可以是正或负""""

循环浏览每个客户记录,以获取他们来自的第一个/最后一个渠道

Flask运行时无法在Python中打印到控制台

以异步方式填充Pandas 数据帧

从嵌套极轴列的列表中删除元素

如何将相同组的值添加到嵌套的Pandas Maprame的倒数第二个索引级别

Pythonquests.get(Url)返回Colab中的空内容

以极轴表示的行数表达式?

用LAKEF划分实木地板AWS Wrangler

try 使用RegEx解析由标识多行文本数据的3行头组成的日志(log)文件

搜索结果未显示.我的URL选项卡显示:http://127.0.0.1:8000/search?";,而不是这个:";http://127.0.0.1:8000/search?q=name";

如何在开始迭代自定义迭代器类时重置索引属性?

使用_in链接操作管道传输的中间结果是否可用于链中的后续函数?

使用pyopencl、ArrayFire或另一个Python OpenCL库制作基于欧几里得距离的掩模

如何仅使用数据帧操作获得特定的唯一数据帧组合?

如何从NumPy数组中提取主频?

意外的麻木图像reshape 为网格问题

捕获脚本和退出代码的多行输出