將清單分成幾乎相等的部分
將清單分成相等的部分是程式設計中的常見任務。 Python 中的內建 chunks() 方法提供了一種將清單拆分為大小相等的區塊的方法,但是如果您想將清單分成大致相等的部分怎麼辦?
實現此目的的一種方法是使用清單產生器:
def split(a, n): k, m = divmod(len(a), n) return (a[i*k+min(i, m):(i+1)*k+min(i+1, m)] for i in range(n))
其工作原理如下:
範例:
>>> list(split(range(11), 3)) [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10]]
此程式碼將長度為11 的清單分割為3個部分,分別產生4、4 和3 個元素的部分。
以上是如何在 Python 中將列表分成幾乎相等的部分?的詳細內容。更多資訊請關注PHP中文網其他相關文章!