Python循環(huán)語句For?Range用法示例詳解
一、range 函數(shù)概念
range
函數(shù)是一個內(nèi)建函數(shù),它的返回值是一個半閉半開范圍內(nèi)的整數(shù)。for
循環(huán)常與range
函數(shù)一起使用,range
函數(shù)為循環(huán)提供條件。
二、語法結(jié)構(gòu)
range(start, end,step=1)
案例
常規(guī)使用:
[root@localhost day02]# python3 >>> tmp = range(1, 10) >>> tmp range(1, 10) >>> len(tmp) 9 >>> list(tmp) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> tmp01 = range(5) >>> tmp01 range(0, 5) >>> list(tmp01) [0, 1, 2, 3, 4]
因為 range 函數(shù)的使用和切片比較類似,所以同樣具有切片的使用特性:
[root@localhost day02]# python3 >>> tmp = range(1, 10, 2) >>> list(tmp) [1, 3, 5, 7, 9]
與 for 循環(huán)一起使用
可以把 range 函數(shù)當成購物車,購物車中的商品是一個個范圍內(nèi)的數(shù)字,要想拿出里面的數(shù)字,就得遍歷,所以 range 可以和 for 連用,可以控制循環(huán)次數(shù)。
控制for循環(huán)的次數(shù)
[root@localhost day02]# vim demo07_for.py # demo07_for.py是文件名,可以修改 for i in range(3): print("第" + str(i) + "次:hello world")
- 如果直接打印 "hello world":
[root@localhost day02]# vim demo07_for.py # demo07_for.py是文件名,可以修改 for i in range(3): print("hello world")
- 這里的變量 i 只是為了語法,在案例中沒有實際意義,不寫變量在語法層面會報錯,這里的 range 只為控制循環(huán)次數(shù)。
三、列表解析
它是一個非常有用、簡單、靈活的工具,可以用來動態(tài)地創(chuàng)建列表,注意:它只是一個簡寫方式,不是新知識點
語法結(jié)構(gòu)
案例:生成一個元素為 1~10 的列表
for 循環(huán)方式:語法相對復(fù)雜,但是好理解
[root@localhost day02]# vim demo08_for.py # demo08_for.py是文件名,可以修改 list01 = [] for i in range(1, 11): list01.append(i) # [1, 2, 3, 4, 5 ,6 ,7 ,8, 9, 10] print(list01)
列表解析式
[root@localhost day02]# vim demo08_for.py # demo08_for.py是文件名,可以修改 list01 = [i for i in range(1, 11)]
列表解析式相對于for循環(huán),只是變了一種結(jié)構(gòu),核心還是for循環(huán),所以我們只需要關(guān)心語法即可。
練習(xí):將剛才的 list01 列表的基礎(chǔ)上對其中的每個元素加 1
[root@localhost day02]# vim demo08_for.py # demo08_for.py是文件名,可以修改 list01 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] list01 = [i+1 for i in list01] print(list01)
練習(xí):斐波那契數(shù)列
- 斐波那契數(shù)列就是某一個數(shù),總是前兩個數(shù)之和,比如 0,1,1,2,3,5,8
- 使用for循環(huán)和range函數(shù)編寫一個程序,計算有10個數(shù)字的斐波那契數(shù)列
- 改進程序,要求用戶輸入一個數(shù)字,可以生成用戶需要長度的斐波那契數(shù)列
版本一
[root@localhost day02]# vim test05_for.py # test05_for.py是文件名,可以修改 fib = [0,1] # 定義列表,指定斐波那契數(shù)列的初始兩個值 for i in range(8): # for循環(huán)執(zhí)行8次,列表fib中的元素個數(shù)變?yōu)?0【初始2個 + 新增的8個】 fib.append(fib[-1] + fib[-2]) # 列表追加,每次都是最后一個元素和倒數(shù)第二個元素相加,產(chǎn)生新的元素 print(fib) # 打印列表fib
版本二:編寫可以指定長度的斐波那契數(shù)列程序
[root@localhost day02]# vim test05_for.py # test05_for.py是文件名,可以修改 fib = [0,1] # 定義列表,指定斐波那契數(shù)列的初始兩個值 n = int(input('長度: ')) # 定義變量n, 此變量為用戶要看到的列表fib中的元素個數(shù) # for循環(huán)執(zhí)行n-2次,for循環(huán)執(zhí)行多少次,列表fib會新增多少個元素 # 因為列表fib本身有兩個初始值,所以要產(chǎn)生n-2個數(shù)字 for i in range(n - 2): fib.append(fib[-1] + fib[-2]) print(fib)
以上就是Python循環(huán)語句For Range用法示例詳解的詳細內(nèi)容,更多關(guān)于Python循環(huán)語句For Range的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python3 BeautifulSoup模塊使用字典的方法抓取a標簽內(nèi)的數(shù)據(jù)示例
這篇文章主要介紹了python3 BeautifulSoup模塊使用字典的方法抓取a標簽內(nèi)的數(shù)據(jù),結(jié)合實例形式Fenix了python3 BeautifulSoup模塊進行數(shù)據(jù)的抓取相關(guān)操作技巧,需要的朋友可以參考下2019-11-11selenium+python實現(xiàn)基本自動化測試的示例代碼
這篇文章主要介紹了selenium+python實現(xiàn)基本自動化測試的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01用python按照圖像灰度值統(tǒng)計并篩選圖片的操作(PIL,shutil,os)
這篇文章主要介紹了用python按照圖像灰度值統(tǒng)計并篩選圖片的操作(PIL,shutil,os),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06pycharm的console輸入實現(xiàn)換行的方法
今天小編就為大家分享一篇pycharm的console輸入實現(xiàn)換行的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01