Python 每60个元素在新列表中分组

Python 每60个元素在新列表中分组,python,list,grouping,Python,List,Grouping,考虑到第一个元素的索引为0,我希望接收一个包含N个元素的数据集,并将其每59个元素分组一次。这个脚本中的问题是,在sample.append(data[i])部分中,它将所有数据再次分组到一个列表中,我想将其划分如下[[60个元素],[60个元素],…]。有什么改正的建议吗 脚本: @staticmethod def sampleDivision(data): parts = int(len(data) / 60) collections = [] i =

考虑到第一个元素的索引为0,我希望接收一个包含N个元素的数据集,并将其每59个元素分组一次。这个脚本中的问题是,在
sample.append(data[i])
部分中,它将所有数据再次分组到一个列表中,我想将其划分如下<代码>[[60个元素],[60个元素],…]。有什么改正的建议吗

脚本:

@staticmethod        
def sampleDivision(data):
    parts = int(len(data) / 60)
    collections = []
    i = 1
    while i <= parts:
        i * 60
        collections.append(i * 59)
        i += 1
    print(collections)
    i = 1
    sample = []
    for position in collections:
        while i <= int(position):
            sample.append(data[i])
            i += 1

    return sample
[68, 69, 68, 69, 70, 71, 75, 72, 73, 72, 72, 73, 72, 72, 73, 70, 71, 73, 72, 72, 71, 69, 68, 69, 68, 69, 68, 69, 68, 68, 68, 68, 69, 68, 69, 70, 71, 75, 72, 69, 68, 68, 68, 69, 68, 69, 70, 71, 75, 72, 69, 68, 69, 68, 69, 68, 69, 68, 68, 60, 60, 61, 60, 61, 65, 69, 69, 72, 73, 72, 72, 73, 72, 72, 73, 70, 71, 73, 75, 78, 80, 82, 84, 87, 84, 84, 83, 82, 79, 78, 76, 74, 73, 72, 72, 72, 71, 75, 72, 69, 68, 68, 68, 69, 68, 69, 70, 71, 75, 72, 69, 68, 69, 68, 69, 68, 69, 68]

range
函数有一个在这种情况下很有用的递增参数

下面是一个示例函数,它实现了我认为您需要的功能:

def group_every_n(elements, n):
  L = len(elements) 
  return [elements[i: i+n] for i in range(0, L, n)]

# Get every 60 elements
grouped_by_60 = group_every_n(elements, 60)

在本例中,
L
是列表的长度,
range(0,L,n)
创建了一个生成器对象(基本上是一个直到我们请求才创建的列表),该对象在循环的每次迭代中都会吐出每个
n
th元素。根据原始列表的长度,最后一个组的元素可能少于60个。

函数的
range
函数有一个增量参数,在这种情况下非常有用

下面是一个示例函数,它实现了我认为您需要的功能:

def group_every_n(elements, n):
  L = len(elements) 
  return [elements[i: i+n] for i in range(0, L, n)]

# Get every 60 elements
grouped_by_60 = group_every_n(elements, 60)

在本例中,
L
是列表的长度,
range(0,L,n)
创建了一个生成器对象(基本上是一个直到我们请求才创建的列表),该对象在循环的每次迭代中都会吐出每个
n
th元素。取决于原始列表的长度,最后一组的元素可能少于60个。

您这么容易就做到了,我觉得rs的完美太糟糕了,谢谢您的帮助!谢谢你的邀请!这是我对Stack Overflow的第一个贡献:)祝贺你们,欢迎你们,你们将是一个伟大的成员你们做得这么容易,我感觉很糟糕rs’完美,谢谢你们的帮助!谢谢你的邀请!这是我对堆栈溢出的第一个贡献:)祝贺你,欢迎你,你将是一个伟大的成员