python怎样把一个列表平均分割成n个列表
时间: 2023-06-03 15:04:48 浏览: 79
你好,这是一个关于Python的问题。可以使用列表切片来实现这个功能。代码如下所示:
```python
def divide_list(lst, n):
# 计算每个子列表的长度
length = len(lst) // n
# 使用列表切片来分割原始列表
return [lst[i * length:(i + 1) * length] for i in range(n)]
#示例
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9]
n = 3
print(divide_list(lst, n)) # [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```
希望我的回答能够对你有所帮助。如果有其他问题,请随时问我。
相关问题
帮我用Python 写一个平均分割 list
我可以给你一个示例:# 将一个列表平均分割成N段def avg_list(list_data, n):
avg = len(list_data) / float(n)
out = []
last = 0.0 while last < len(list_data):
out.append(list_data[int(last):int(last + avg)])
last += avg return out print(avg_list([1, 2, 3, 4, 5], 2))
把n个数分成k份,使其尽量平均
这是一个经典的问题,可以使用贪心算法来解决。
首先,我们需要将这n个数从小到大排序。然后,我们可以将第一个数放入第一份中,第二个数放入第二份中,以此类推,直到第k份。接下来,我们再将第k+1个数放入第一份中,第k+2个数放入第二份中,以此类推,直到第2k份。重复这个过程,直到将所有的数都放入了k份中。
这个贪心算法的基本思想是,将每个数都尽可能平均地分配到各个份中,以达到最终平均分配的目的。
需要注意的是,当n无法被k整除时,最后一份可能会比其他份多一个数。此时,我们可以将多余的数均匀地分配到前面的各份中。
代码示例(Python):
```python
def divide_nums(n, k):
nums = sorted(range(1, n+1))
res = [[] for _ in range(k)]
for i, num in enumerate(nums):
res[i%k].append(num)
return res
print(divide_nums(10, 3)) # [[1, 4, 7, 10], [2, 5, 8], [3, 6, 9]]
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)