遍历Python中的分区
发布于 2021-01-29 14:11:01
我想知道(在Python中)迭代给定大小的列表的分区的最佳方法是什么。
举例来说,我们有列表[1,2,3,4,5]
,需要k=3
分区。一个糟糕的方法是这样写:
lst = [1,2,3,4,5]
for i in range(1,len(lst)):
for j in range(i+1, len(lst)):
print lst[:i], lst[i:j], lst[j:]
这给
[1], [2], [3,4,5]
[1], [2,3], [4,5]
...
[1,2,3], [4], [5]
但是,如果我以后想遍历k=4
分区,则必须添加for循环嵌套级别,这在运行时无法完成。理想情况下,我想写一些类似的东西:
for part in partitions([1,2,3,4,5], k):
print part
有谁知道最好的方法吗?
关注者
0
被浏览
127
1 个回答