content:

  • range()
  • np.arange()
  • np.linspace()

一.range(start, stop, step)

1.range() 为 python 自带函数

2.生成一个从start(包含)到stop(不包含),以step为步长的序列。返回一个 list 对象

  • range(stop) 返回 range object
  • range(start, stop[, step]) 返回 range object

3.start默认为0,stop是必须的,step默认为1,可正可负。

  • 例:range(i, j) 生成 i, i+1, i+2, ..., j-1.
  • 例:range(4) 生成 0, 1, 2, 3.

4.只能生成整型的序列

5.举例

range(6)
range(0, 6)
for i in range(6):
print(i)
0
1
2
3
4
5
range(10.0)   #浮点型不能实现哦o(^▽^)o
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-50-2abe667105db> in <module>()
----> 1 range(10.0) #浮点型不能实现哦o(^▽^)o TypeError: 'float' object cannot be interpreted as an integer
range(1,6)
range(1, 6)
for i in range(6):print (i)
0
1
2
3
4
5
range(1,6,3)
range(1, 6, 3)
for i in range(1,6,3):print(i)
1
4

二.np.arange([start,] stop[, step])

1.np.arange() 在 numpy 模板中

2.生成一个从start(包含)到stop(不包含),以step为步长的序列。返回一个 ndarray 对象

3.参数解释:

  • start : 数值, 可选。包含此值,默认为0.
  • stop : 数值,必须。不包含此值, 除非“step”不是整数,浮点舍入会影响“out”的长度
  • step : 数值, 可选。默认为1,如果步长有指定,则start必须给出来
  • dtype : 数据类型。输出array的数据类型。 If dtype is not given, infer the data type from the other input arguments.

4.可生成整型、浮点型序列,毫无压力

5.当使用非整数步骤(如0.1)时,结果往往不一致。对于这些情况,最好使用‘linspace’。

6.举例

import numpy as np
np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
np.arange(10.0)
array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9.])
np.arange(1,10)
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
np.arange(1,10,2)
array([1, 3, 5, 7, 9])
np.arange(1,10,2.0)
array([ 1.,  3.,  5.,  7.,  9.])

三个参数,如果任一为浮点型,那么都会生成一个浮点型序列。

三.np.linspace

linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

  • 指定在start到stop均分数值
  • start:不可省
  • stop:有时包含有时不包含,根据endpoint来选择,默认包含
  • num:指定均分的数量,默认为50
  • endpoint:布尔值,可选,默认为True。包含stop就True,不包含就False
  • retstep : 布尔值,可选,默认为False。如果为True,返回值和步长
  • dtype : 输出数据类型,可选。如果不指定,则根据前面参数的数据类型
np.linspace(1,10)   #默认生成50个,包含stop:10
array([  1.        ,   1.18367347,   1.36734694,   1.55102041,
1.73469388, 1.91836735, 2.10204082, 2.28571429,
2.46938776, 2.65306122, 2.83673469, 3.02040816,
3.20408163, 3.3877551 , 3.57142857, 3.75510204,
3.93877551, 4.12244898, 4.30612245, 4.48979592,
4.67346939, 4.85714286, 5.04081633, 5.2244898 ,
5.40816327, 5.59183673, 5.7755102 , 5.95918367,
6.14285714, 6.32653061, 6.51020408, 6.69387755,
6.87755102, 7.06122449, 7.24489796, 7.42857143,
7.6122449 , 7.79591837, 7.97959184, 8.16326531,
8.34693878, 8.53061224, 8.71428571, 8.89795918,
9.08163265, 9.26530612, 9.44897959, 9.63265306,
9.81632653, 10. ])
np.linspace(1,10,endpoint=False) #默认生成50个,不包含stop:10
array([ 1.  ,  1.18,  1.36,  1.54,  1.72,  1.9 ,  2.08,  2.26,  2.44,
2.62, 2.8 , 2.98, 3.16, 3.34, 3.52, 3.7 , 3.88, 4.06,
4.24, 4.42, 4.6 , 4.78, 4.96, 5.14, 5.32, 5.5 , 5.68,
5.86, 6.04, 6.22, 6.4 , 6.58, 6.76, 6.94, 7.12, 7.3 ,
7.48, 7.66, 7.84, 8.02, 8.2 , 8.38, 8.56, 8.74, 8.92,
9.1 , 9.28, 9.46, 9.64, 9.82])
 np.linspace(2.0, 3.0, num=5)  #指定生成5个,包含stop:10
array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ])
np.linspace(2,3,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() , np.arange() , np.linspace()的更多相关文章

  1. Python中range, np.arange, np.linspace的区别

    目录 range np.arange np.linspace range 特点 range()是python内置函数,指定开始值,终值和步长生成等差数列的一维数组 不包含终值 步长只能是整数,生成整数 ...

  2. Python:range、np.arange和np.linspace

    1. range range是python内置的一个类,该类型表示一个不可改变(immutable)的数字序列,常常用于在for循环中迭代一组特殊的数,它的原型可以近似表示如下: class rang ...

  3. python基础 range()与np.arange()

    range()返回的是range object,而np.nrange()返回的是numpy.ndarray() range尽可用于迭代,而np.nrange作用远不止于此,它是一个序列,可被当做向量使 ...

  4. range() 与 np.arange()

    转自:http://blog.csdn.net/lanchunhui/article/details/49493633 range()返回的是range object,而np.nrange()返回的是 ...

  5. 【转】np.linspace()、np.logspace()、np.arange()

    转自:https://blog.csdn.net/ui_shero/article/details/78881067 1.np.linspace() 生成(start,stop)区间指定元素个数num ...

  6. range() 和 np.arange()区别

    range() 和 np.arange()区别 range(start,stop,step) 三个参数都必须是整数 np.arange()没有此类约束

  7. python 中range numpy.arange 和 numpy.linspace 的区别

    1.返回值不同 range返回一个range对象,numpy.arange和numpy.linspace返回一个数组. 2.np.arange的步长可以为小数,但range的步长只能是整数. 与Pyt ...

  8. categorical[np.arange(n), y] = 1 IndexError: index 2 is out of bounds for axis 1 with size 2

    我的错误的代码是:train_labels = np_utils.to_categorical(train_labels,num_classes = 3) 错误的原因: IndexError: ind ...

  9. range和arange

    a = np.arange(12) print(a, type(a)) b = range(10) print(b, type(b)) li = list(b) print(li) 拓展: 两个参数: ...

随机推荐

  1. HDU1846 Brave Game

    Brave Game Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  2. 洛谷P4926 [1007]倍杀测量者(差分约束)

    题意 题目链接 Sol 题目中的两个限制条件相当于是 \[A_i \geqslant (K_i - T)B_i\] \[A_i(K_i + T) \geq B_i\] 我们需要让这两个至少有一个不满足 ...

  3. PyTorch使用总览

    PyTorch使用总览 https://blog.csdn.net/u014380165/article/details/79222243 深度学习框架训练模型时的代码主要包含数据读取.网络构建和其他 ...

  4. go 利用orm简单实现接口分布式锁

    在开发中有些敏感接口,例如用户余额提现接口,需要考虑在并发情况下接口是否会发生问题.如果用户将自己的多条提现请求同时发送到服务器,代码能否扛得住呢?一旦没做锁,那么就真的会给用户多次提现,给公司带来损 ...

  5. java一个数分解的质因数java

    import java.util.Scanner; /** * Created by Admin on 2017/3/18. */ public class Test01 { public stati ...

  6. Exception in thread "main" java.lang.RuntimeException: Hive metastore database is not initialized. Please use schematool (e.g. ./schematool -initSchema -dbType ...) to create the schema. If needed, do

    继上一篇Hive: Exception in thread "main" java.lang.RuntimeException: Hive metastore database i ...

  7. ZooKeeper使用命令大全

    stat path [watch]    set path data [version]    ls path [watch]    delquota [-n|-b] path    ls2 path ...

  8. centos下mysql授予权限提示ERROR 1133 (42000): Can't find any matching row in the user table

    错误: 给mysql对应的用户授予权限的时候提示报错: 解决方法: 后面才知道原来是同事这边新增了用户没有flush grant all privileges on *.* to 'user'@'%' ...

  9. 网站出现403 Forbidden

    1, 你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了 2, 网站域名解析到了空间,但空间未绑定此域名 3, 你的网页脚本文件在当前目录下没有执行权限 4, 服务器繁忙,同一IP ...

  10. February 14th, 2018 Week 7th Wednesday

    Love does not dominate, it culitvates. 爱不是羁绊,而是成就. Love should not wipe out everything you are, love ...