gpt4 book ai didi

python - 将列表划分为偏移量为 1 的子列表

转载 作者:行者123 更新时间:2023-11-30 22:10:11 33 4
gpt4 key购买 nike

我有以下列表:

x=["A", "B", "B", "C", "B", "A", "D", "D", "A", "B", "A", "D"]

我想知道如何将一个分区划分为长度为 2、偏移量为 1 的子列表,这样就可以得到:

#[["A", "B"], ["B", "B"], ["B", "C"], ["C", "B"], ["B", "A"], ["A", 
# "D"], ["D", "D"], ["D", "A"], ["A", "B"], ["B", "A"], ["A", "D"]]

还有一个通用的方法吗?例如对于不同大小的分区和不同的偏移量?假设我想分区为 3 个子列表,偏移量为 2: ,我会得到

#[["A", "B", "B"], ["B", "C", "B"], ["B", "A", "D"], ["D", "D", 
# "A"], ["A", "B", "A"]]

是否可以将其写为函数,以便对于给定的列表,具有给定的分区大小和给定的偏移量,它可以找到子列表?

最佳答案

您可以在第一个元素之后使用列表的一部分,并使用 zip

执行此操作
    >>> x=["A", "B", "B", "C", "B", "A", "D", "D", "A", "B", "A", "D"]
>>> [list(a) for a in zip(x,x[1:])]
[['A', 'B'], ['B', 'B'], ['B', 'C'], ['C', 'B'], ['B', 'A'], ['A', 'D'], ['D',
'D'], ['D', 'A'], ['A', 'B'], ['B', 'A'], ['A', 'D']]

关于python - 将列表划分为偏移量为 1 的子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51729217/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com