下面是关于“python将数组n等分”的完整攻略:
1. 切片方法
Python提供了一种切片方法来将一个数组切成n等份。原理是使用列表切片,设切割成m份,则切片的步长为:len(a)//m,如下代码实现:
a = [1, 2, 3, 4, 5, 6, 7]
m = 3
n = len(a)//m
chunks = [a[i:i + n] for i in range(0, len(a), n)]
print(chunks)
输出结果:
[[1, 2, 3], [4, 5, 6], [7]]
上述代码中,将列表a分成3个子列表,每个子列表包含的元素数量相等,即为2。a[i:i+n]表示列表a从下标i开始,取到下标i+n的元素,循环分别取出相应的子列表,最后输出结果。
2. numpy库方法
如果你使用的是numpy库,numpy库也提供了等分的功能,如下示例:
import numpy as np
arr = np.array([1,2,3,4,5,6,7,8,9,10])
n = 4
res_arr = np.array_split(arr, n)
print(res_arr)
输出结果:
[array([1, 2, 3]), array([4, 5, 6]), array([7, 8]), array([ 9, 10])]
将数组arr等分成n份,在上述代码中,numpy提供了一个array_split()函数,该函数的第一个参数是要等分的数组,第二个参数是份数。函数返回等分后的数组列表。
通过上述两种方法,我们可以很方便地将一个数组切成n等份。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python将数组n等分的实例 - Python技术站