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. vue-cli中安装方法

    源:http://www.cnblogs.com/jn1223/p/6656956.html vue-cli中安装方法   vue-cli脚手架模板是基于node下的npm来完成安装的所以首先需要安装 ...

  2. JS之汉字与Unicode码的相互转化

    有时候,我们在给后端传递变量的的值中有汉字,可能由于编码的原因,传递到后端后变为乱码了.所以有时候为了省事或者其它特殊要求的时候,会把传递的汉字转换成Unicode编码后再进行传递. 当然汉字转换成u ...

  3. concrrent类下 BlockingDeque 下 自己实现代码编写

    一.LinkedBlockingDeque简介 java6增加了两种容器类型,Deque和BlockingDeque,它们分别对Queue和BlockingQueue进行了扩展. Deque是一个双端 ...

  4. loadrunner 脚本优化-参数化方法

    脚本优化-参数化方法 by:授客 QQ:1033553122 方法一 1.确定需要参数化的内容 2.选中需要参数化的内容 3.右键选中的内容->Replace with a Parameter- ...

  5. 数组去重(JS)

    数据类型: (栈类型) 原始值:boolen,num,string,null,undefined (堆类型) 引用值:object,array 首先重新定义一个type()函数, <script ...

  6. 通过UNIX域套接字传递描述符的应用

      传送文件描述符是高并发网络服务编程的一种常见实现方式.Nebula 高性能通用网络框架即采用了UNIX域套接字传递文件描述符设计和实现.本文详细说明一下传送文件描述符的应用. 1. TCP服务器程 ...

  7. 前端 CSS预处理器Less

    引文 Less是一种动态的样式语言.Less扩展了CSS的动态行为,比如说,设置变量(Variables).混合书写模式(Mixins).操作(Operations)和功能(Functions)等等, ...

  8. 一些安全相关的HTTP header

    1.Strict-Transport-Security HTTP Strict-Transport-Security,简称为HSTS. 作用:允许一个HTTPS网站,要求浏览器总是通过HTTPS访问它 ...

  9. java----八种排序算法

    1.直接插入排序 经常碰到这样一类排序问题:把新的数据插入到已经排好的数据列中. 将第一个数和第二个数排序,然后构成一个有序序列 将第三个数插入进去,构成一个新的有序序列. 对第四个数.第五个数……直 ...

  10. java质数判断

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