Python 里的 range 是干嘛使用的
一、range 是干嘛的?
range() 用來生成一個整數(shù)序列,常用于 for 循環(huán)。
for i in range(5):
print(i)
輸出:
0
1
2
3
4
二、三種用法
① 一個參數(shù)
range(stop)
表示:從 0 開始,到 stop 結(jié)束(不包含 stop)
range(5)
= 0,1,2,3,4
② 兩個參數(shù)
range(start, stop)
從 start 到 stop(不包含 stop)
range(2, 6)
= 2,3,4,5
③ 三個參數(shù)
range(start, stop, step)
step 是步長
range(0, 10, 2)
= 0,2,4,6,8
三、倒序?qū)懛?/h2>
range(10, 0, -1)
range(10, 0, -1)
輸出:
10,9,8,7,6,5,4,3,2,1
? 注意:
- step 必須為負(fù)數(shù)
- stop 依然不包含
四、range 的重要特性(很多人不知道)
1?? 不是真正的列表
print(range(5))
輸出:
range(0, 5)
它是一個惰性對象(lazy object)
不會一次性生成所有數(shù)字,節(jié)省內(nèi)存。
如果你要變成列表:
list(range(5))
2?? 占用內(nèi)存極小
range(1000000000)
不會爆內(nèi)存。
因?yàn)樗淮妫?/p>
- start
- stop
- step
五、常見用法
① 控制循環(huán)次數(shù)
for _ in range(10):
print("hello")
② 用索引遍歷列表(但不推薦)
nums = [10, 20, 30]
for i in range(len(nums)):
print(nums[i])更推薦:
for num in nums:
print(num)
③ 同時拿索引和值(推薦)
for i, value in enumerate(nums):
print(i, value)
六、常見坑
? 1. 不包含 stop
range(1, 5)
不是 1 到 5
是 1 到 4
? 2. 步長方向錯誤
range(5, 1)
結(jié)果是空!
因?yàn)槟J(rèn) step = +1
正確寫法:
range(5, 1, -1)
七、面試??键c(diǎn)
Q:range 是列表嗎?
答:不是,是一個可迭代對象。
Q:range 占內(nèi)存大嗎?
答:不會,它是惰性的。
八、進(jìn)階小知識(Python 3)
range 支持:
5 in range(10) # True
因?yàn)樗С?O(1) 判斷,不會遍歷。
到此這篇關(guān)于Python 里的 range 是干嘛使用的的文章就介紹到這了,更多相關(guān)Python range使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用python將圖片格式轉(zhuǎn)換為ico格式的示例
今天小編就為大家分享一篇使用python將圖片格式轉(zhuǎn)換為ico格式的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Python退出時強(qiáng)制運(yùn)行一段代碼的實(shí)現(xiàn)方法
這篇文章主要介紹了Python退出時強(qiáng)制運(yùn)行一段代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
使用python制作一個為hex文件增加版本號的腳本實(shí)例
今天小編就為大家分享一篇使用python制作一個為hex文件增加版本號的腳本實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06
tensorflow 用矩陣運(yùn)算替換for循環(huán) 用tf.tile而不寫for的方法
今天小編就為大家分享一篇tensorflow 用矩陣運(yùn)算替換for循環(huán) 用tf.tile而不寫for的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
Python爬蟲抓取技術(shù)的一些經(jīng)驗(yàn)
這篇文章主要介紹了Python爬蟲抓取技術(shù)的一些經(jīng)驗(yàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-07-07
使用Python實(shí)現(xiàn)一個網(wǎng)址管理小工具
這篇文章主要介紹了如何使用Python實(shí)現(xiàn)一個網(wǎng)址管理小工具,主要用途是幫助用戶整理、存儲和快速訪問常用網(wǎng)站信息,適合需要管理多個常用網(wǎng)站的用戶,相當(dāng)于一個個性化的 網(wǎng)站收藏夾,比瀏覽器自帶收藏夾更靈活,需要的朋友可以參考下2025-10-10

