python随笔:range

2023-01-31 02:01:27 python range 随笔

range()

是一个用来创建算数级数序列的通用函数。

python3里,有自己的类型,range型。


暂时的理解,实际是一个(32位电脑/python (-2**31,+2**31)),(64位电脑/Python (-2**63,+2**63)),内置的,不可更改的元组。

但实际range在底层定义的时候使用了迭代方法。具体参照迭代。

r=range(1,99)
print(type(r))                #r是range型

print(tuple(r))
print(r)                    #从1-98的列表,说明range可以理解成元组


--------如何使用-----------------------------

range(起始位置:结束位置:步长)

默认步长是1

起始位置<结束位置,步长是正数

起始位置>结束位置,步长是负数


  • range(4,8)

    从第4个开始数8-4个

  • range(4,8,2)

    从第4个开始,隔一位取一个

  • range(8)

    默认从0开始数8-0个

  • range(-1, -19,-1)                        #步长必须是负数,否则没有结果



  • #range元素的位置,和截取
    r = range(4, 8)
    s = '0123456789'
    for i in r:
        print('第%d次' % (i-3))
        print('i am string S:', s[i])
        print('i am range num r', i)
  • for i in range(5):
        print('i的值:', i)
        i += 2
        print('i+2=', i)
        print('i都被改变了,想想为啥还是五次?')

    因为for开始,i每次都取range元组里的值,而不是位置,所以程序末尾i+=2后,下次循环又读取range里面的值,所以还是5次。

相关文章