range()函式可以定義一段整數范圍, 回傳一個range型別的可迭代物件( 并非迭代器), 也可以理解為一段左閉右開的整數范圍[ start, stop), 常用于回圈結構中
語法格式
range(start, stop, step)
start: 計數從start開始, 默認從0開始
stop: 計數從stop結束,[start,stop)含頭不含尾
step: 步長, 默認為1
回傳值型別
range()函式的回傳值型別是一個 range型別的資料, 可以理解為一個'整數串列', 但并非真正意義上的串列
print('range()函式的資料型別是: %s' % type(range(1, 10)))

1. 轉換串列
range()函式的回傳值并非串列型別, 但我們可以使用 list()函式將其轉換為串列型別
result = list(range(1, 10))
print(result)

2. for回圈遍歷
range()函式常用于回圈遍歷, 比如定義一個整數范圍, 然后遍歷這個'整數串列', 獲取每一個值
for value in range(1, 10):
print(value, end=' ')

3. 傳遞一個引數
range()函式只傳遞一個引數的時候, 作用的引數是stop 即 range( stop ), 默認從0開始, 默認步長是1, 回傳一段0到stop的整數范圍, 即 [ 0, stop ), 含0不含stop
for value in range(10):
print(value, end=' ')

4.傳遞兩個引數
range()函式傳遞兩個引數的時候, 作用的引數是 start 和 stop, 即 range( start, stop ), 從start開始計數, 到stop 結束計數, 默認步長是1, 回傳一段start 到 stop 的整數范圍, 即 [start, stop), 含start, 不含stop
for value in range(1, 10):
print(value, end=' ')

5.傳遞三個引數
range()函式傳遞三個引數時, 第三個引數將會指定步長, 也就是每次遞增的值
for value in range(1, 10, 2):
print(value, end=' ')
由結果可知, 每次增加的值是2, 而非以往默認的1

6. 倒序
通過改變引數開始和結束的值, 可以從大到小遍歷, 而不是平時常用的從小到大的順序, 同時需要指定步長為負數
for value in range(10, 1, -1):
print(value, end=' ')
由結果可知, 每次回圈的結果都會減1, 而不是往常的加1

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297516.html
標籤:其他
