np.arange()和 range()的用法及区别

您所在的位置:网站首页 python里面的range函数 np.arange()和 range()的用法及区别

np.arange()和 range()的用法及区别

2023-07-28 04:26| 来源: 网络整理| 查看: 265

np.arange()

np.arange()函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是6,步长为1。 参数个数情况: np.arange()函数分为一个参数,两个参数,三个参数三种情况

一个参数时,参数值为终点,起点取默认值0,步长取默认值1。两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长。其中步长支持小数   # 一个参数 默认起点0,步长为1 输出:[0 1 2 3 4 5] a = np.arange(5) # 两个参数 默认步长为1 输出[3 4 5] a = np.arange(3,6) # 三个参数 起点为0,终点为3,步长为0.5 输出[ 0. 0.5 1. 1.5 2. 2.5] a = np.arange(0, 3, 0.5)

当使用非整数步长(如0.1)时,结果往往不一致。这些情况下最好使用linspace。

>>> np.linspace(2.0, 3.0, num=5) array([ 2. , 2.25, 2.5 , 2.75, 3. ]) >>> np.linspace(2.0, 3.0, num=5, endpoint=False) array([ 2. , 2.2, 2.4, 2.6, 2.8]) >>> np.linspace(2.0, 3.0, num=5, retstep=True) (array([ 2. , 2.25, 2.5 , 2.75, 3. ]), 0.25) range() 函数语法: range(stop) range(start, stop[, step])

参数说明:

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1) >>>range(5) range(0, 5) >>> for i in range(5): ... print(i) ... 0 1 2 3 4 >>> list(range(5)) [0, 1, 2, 3, 4] >>> list(range(0)) []

有两个参数或三个参数的情况(第二种构造方法):

>>>list(range(0, 30, 5)) [0, 5, 10, 15, 20, 25] >>> list(range(0, 10, 2)) [0, 2, 4, 6, 8] >>> list(range(0, -10, -1)) [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] >>> list(range(1, 0)) [] 注意range()和np.arange()区别

arange()是Numpy中的函数,它和python自带函数range()的功能貌似比较相同。但是range()和np.arange()有一些区别:

range()和np.arange()的返回类型不同,range()返回的是range这个object,而np.arange()返回的是ndarray类型;range()不支持步长为小数,而np.arange()支持步长(step)为小数;range()和np.arange()都可用于迭代;range()和np.arange()都有三个参数,以第一个参数为起点,第三个参数为步长,截止到第二个参数之前的不包括第二个参数的数据序列。range()可用于迭代,而np.arange()作用远不止于此,它是一个序列,可被当做向量使用。  


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3