我在数组中有15个元素,我想分别将它们中的每五个分配给一个块。要素是:
elements=["a",'b','c','d','e','f','g','h','i','j','k','l','m','n','o']
我想说前5个元素属于块#1,后5个元素属于块#2,依此类推。我需要在循环结构中执行它,如下所述,我需要使用每个块的信息来执行特殊任务。因为我是python的新手,我不知道如何编写它。任何建议都将受到高度赞赏。
答案 0 :(得分:2)
你可以简单地使用列表理解:
def blockify(elements,n=5):
return [elements[i:i+n] for i in range(0,len(elements),n)]
将生成:
blockify(elements,5)
或更通用:
range
然后使用0
调用它。
我们所做的是创建一个len(elements)
,范围从elements
到5
(n
的长度),并制作elements[i:i+5]
的跃点(或通用案例中的# Should write a new csv file every time containing the sorted scores
with open("srt_Scores.csv", "w") as sortfile:
w = csv.writer(sortfile)
w.writerow([scores_int])
)。现在,对于每个步骤,我们都会在结果中添加一个切片{{1}}。
答案 1 :(得分:0)
循环全部并将索引除以5(分区运算符//) 划分的结果是组数。