目录
  • 如何设置list步长
    • 示例:range(a, b, step)
  • python list切片步长

    如何设置list步长

    示例:range(a, b, step)

    >>> list(range(0,5,2))
     
    [0, 2, 4]

    其中step默认值为1,只能是整数步长,负数表示倒序。

    >>> list(range(5,0,-2))
     
    [5, 3, 1]

    如果想生成小数步长的话,可以使用numpy模块中的arange:

    >>> import numpy as np
    >>> list(np.arange(0,1,0.1))
    [0.0, 0.10000000000000001, 0.20000000000000001, 0.30000000000000004, 0.40000000000000002, 
    0.5, 0.60000000000000009, 0.70000000000000007, 0.80000000000000004, 0.90000000000000002]

    numpy默认精度为64位浮点数,可以根据需要一下精度:

    >>> import numpy as np
    >>> list(np.arange(0,1,0.1,dtype='float32'))
    [0.0, 0.1, 0.2, 0.30000001, 0.40000001, 0.5,
     0.60000002, 0.69999999, 0.80000001, 0.90000004]

    还可以通过等分的思想来设置步长,用linspace实现:

    >>> import numpy as np
    >>> list(np.linspace(0,0.9,10))
    [0.0, 0.10000000000000001, 0.20000000000000001, 0.30000000000000004, 0.40000000000000002,
     0.5, 0.60000000000000009, 0.70000000000000007, 0.80000000000000004, 0.90000000000000002]

    python list切片步长

    nums[a:b:c]其中的a表示起始的index,b表示最终的index(不包含),c表示一次跨越的步长

    这里,顺便补充一下range(a,b,c)的操作与上面是一致的

    range在python2中就是一个list,而在python3中需要使用list(range())来转化

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。