python隨筆:range

  • 2020 年 1 月 13 日
  • 筆記

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次。