Я новичок в Python и имею список номеров. например 5,10,32,35,64,76,23,53...
.Доступ к сгруппированным элементам в массивах
и я сгруппировал их в четыре (5,10,32,35
, 64,76,23,53
и т. Д.), Используя код от this post.
def group_iter(iterator, n=2, strict=False):
""" Transforms a sequence of values into a sequence of n-tuples.
e.g. [1, 2, 3, 4, ...] => [(1, 2), (3, 4), ...] (when n == 2)
If strict, then it will raise ValueError if there is a group of fewer
than n items at the end of the sequence. """
accumulator = []
for item in iterator:
accumulator.append(item)
if len(accumulator) == n: # tested as fast as separate counter
yield tuple(accumulator)
accumulator = [] # tested faster than accumulator[:] = []
# and tested as fast as re-using one list object
if strict and len(accumulator) != 0:
raise ValueError("Leftover values")
Как я могу получить доступ к отдельным массивам, чтобы я мог выполнять на них функции. Например, я хотел бы получить среднее значение для первых значений каждой группы (например, 5 and 64
в моих примерах).
Вы переопределяете 'list', который является стандартным именем класса. Не рекомендуется. –
Да, обычно я избегаю этого, но подсветка синтаксиса python помогает в примерах. – inlinestyle