最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python range函數(shù)之生成器函數(shù)的示例

 更新時間:2022年12月08日 11:06:23   作者:安迪python學(xué)習(xí)筆記  
這篇文章主要介紹了Python range函數(shù)之生成器函數(shù)的示例,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

range函數(shù)—生成器函數(shù)

1. 什么是range( )函數(shù)

range[re?nd?]:按一定的次數(shù)排列。

range的中文意思是按一定的次數(shù)排列。

range( )函數(shù):Python中的生成器函數(shù)。

range( )函數(shù)在Python中的作用是生成一個新的range對象。

【溫馨提示】

什么是生成器函數(shù)、什么是對象就是Python中的一個概念,就是一個定義,初學(xué)不用過多糾結(jié)。

初學(xué)者重點(diǎn)掌握range函數(shù)的語法即可。

什么是對象,后面的內(nèi)容會講。

2. 回顧列表切片的語法

列表[star:end:step]

列表[開始字符:結(jié)束字符:步長]

列表切片取值語法由4部分構(gòu)成:

  • 列表名。
  • 英文中括號。
  • 3個參數(shù)。
  • 3個參數(shù)之間用英文冒號分隔。
# 新建一個str列表
str_list = ["當(dāng)歸", "人參",  "黃芪",  "紅棗",  "枸杞",  "天麻",  "山楂"]

# 用切片從列表中取值
print(str_list[0:4:2])

# type函數(shù)查看列表切片取值的數(shù)據(jù)類型
print("列表切片取值得到的數(shù)據(jù)類型仍然是列表:", type(str_list[0:4:2]))

【終端輸出】

['當(dāng)歸', '黃芪']
列表切片取值得到的數(shù)據(jù)類型仍然是列表: <class 'list'>

【0:4:2代碼解析】

start=0即開始元素的索引為0,索引0對應(yīng)列表的第1個元素,即元素當(dāng)歸

end=4即結(jié)束元素的索引為4,索引4對應(yīng)列表的第5個元素,即元素枸杞

注意切片的語法:含前不含后,即含開始元素,不含結(jié)束元素枸杞

step=2即步長為2,步長為2可以理解成一次性向前走2步,那就是要跳過1個字符。

3. range( )函數(shù)的語法

【列表切片和range函數(shù)的區(qū)別】

列表切片用英文中括號[],range函數(shù)用英文圓括號()

列表切片的3個參數(shù)用英文冒號:分隔。

range函數(shù)的3個參數(shù)用英文逗號,分隔。

列表[star:end:step]

range(star,end,step)

【range( )函數(shù)的語法如下】

range(開始字符,結(jié)束字符,步長)

range( )函數(shù)由4部分組成:

  • 函數(shù)名:range
  • 英文小括號:( )
  • 3個參數(shù)
  • 3個參數(shù)之間用英文逗號,分隔

【參數(shù)說明】

  • 參數(shù)start:表示起始的整數(shù)(包含該整數(shù)),如果不指定,則默認(rèn)為0。
  • 參數(shù)end:表示結(jié)束的整數(shù)(不包含該整數(shù)),不能省略。
  • 參數(shù)step:表示步長,即兩個數(shù)之間的間隔。如果省略,則默認(rèn)為1,當(dāng)省略該步長時,最后一個英文逗號也可以省略。

【重點(diǎn)提示】

切片和range函數(shù)都包括開始字符,不包括結(jié)束字符,簡單記憶為含前不含后

【返回值】

range函數(shù)返回的是一個range對象。

我們可以利用list函數(shù)將range對象轉(zhuǎn)換成列表。

我們可以利用tuple函數(shù)將range對象轉(zhuǎn)換成元組。

【溫馨提示】

range函數(shù)不能直接生成列表或元組,必需利用list、tuple函數(shù)將其轉(zhuǎn)換成列表或元組。

3. range函數(shù)實(shí)操

3.1 只有1個參數(shù)

# 創(chuàng)建一個range 函數(shù),將結(jié)果賦值給變量r
r = range(3)

# 輸出r 
print(r)

# 用type函數(shù)查看r的數(shù)據(jù)類型
print(type(r))

# 用list函數(shù)將range對象轉(zhuǎn)換為列表
print(list(r))

# 用tuple函數(shù)將range對象轉(zhuǎn)換為元組
print(tuple(r))

【終端輸出】

range(0, 3)
<class 'range'>
[0, 1, 2]
(0, 1, 2)

【range(3)代碼解析】

這里只有1個參數(shù)3。

只有1個參數(shù)表示從整數(shù)0開始,步長為1。

start=0

end=3

step=1,即步長為1

【代碼解析:返回值】

我們用type函數(shù)查看數(shù)據(jù)類型,返回的是<class 'range'>,即是一個range對象。

我們利用list將其轉(zhuǎn)換成列表,我們可以發(fā)現(xiàn)列表中的元素就是一個數(shù)學(xué)中的等差數(shù)列。

為了方便理解,我們可以認(rèn)為range函數(shù)在list函數(shù)的作用下,創(chuàng)建的就是一個等差數(shù)列。

數(shù)列的公差就是步長。

3.2 有2個參數(shù)

# 創(chuàng)建一個range 函數(shù),將結(jié)果賦值給變量r
r = range(2,5)

# 輸出r 
print(r)

# 用type函數(shù)查看r的數(shù)據(jù)類型
print(type(r))

# 用list函數(shù)將range對象轉(zhuǎn)換為列表
print(list(r))

【終端輸出】

range(2, 5)
<class 'range'>
[2, 3, 4]

【range(2,5)代碼解析】

start=2,從2開始,包含2。

end=5,到5結(jié)束,不包含5。

step=1,步長為1。

因此輸出結(jié)果為2,3,4。

3.3 有3個參數(shù)

# 創(chuàng)建一個range 函數(shù),將結(jié)果賦值給變量r
r = range(2,11,3)

# 輸出r 
print(r)

# 用type函數(shù)查看r的數(shù)據(jù)類型
print(type(r))

# 用list函數(shù)將range對象轉(zhuǎn)換為列表
print(list(r))

【終端輸出】

range(2, 11, 3)
<class 'range'>
[2, 5, 8]

【range(2,11,3)代碼解析】

start=2,從2開始,包含2。

end=11,到11結(jié)束,不包含11。

step=3,步長為3,也可以理解為公差為3的等差數(shù)列。

第1個數(shù)為2。
第2個數(shù)為2+3=5。
第3個數(shù)為5+3=8。
第4個數(shù)為8+3=11。(不包含)
因此輸出列表中有2,5,8三個數(shù)。

3.4 步長為負(fù)數(shù)

# 創(chuàng)建一個range 函數(shù),將結(jié)果賦值給變量r
r = range(15,0,-5)

# 輸出r 
print(r)

# 用type函數(shù)查看r的數(shù)據(jù)類型
print(type(r))

# 用list函數(shù)將range對象轉(zhuǎn)換為列表
print(list(r))

【終端輸出】

range(15, 0, -5)
<class 'range'>
[15, 10, 5]

【range(15,0,-5)代碼解析】

start=15,從15開始,包含15。

end=0,到0結(jié)束,不包含0。

step=-5,步長為-5,也可以理解為公差為-5的等差數(shù)列。

第1個數(shù)為15。
第2個數(shù)為15-5=10。
第3個數(shù)為10-5=5。
第4個數(shù)為5-5=0。(不包含)
因此輸出列表中有15,10,5三個數(shù)。

4. list不能完全替代range

range函數(shù)和list函數(shù)最終都能生成一個列表,但兩個函數(shù)各有優(yōu)缺點(diǎn)。

# 創(chuàng)建一個整數(shù)列表
int_list = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]
print(int_list)

r=range(20)
print(list(r))

【終端輸出】

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

觀察上面的代碼,我們發(fā)現(xiàn)用range函數(shù)創(chuàng)建一個有規(guī)律的整數(shù)列表更為便捷。

list函數(shù)需要寫20個元素,但range函數(shù)最多寫3個參數(shù)就可以完成。

5. 總結(jié)

到此這篇關(guān)于Python range函數(shù)—生成器函數(shù)的文章就介紹到這了,更多相關(guān)Python range函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3實(shí)現(xiàn)elasticsearch批量更新數(shù)據(jù)

    python3實(shí)現(xiàn)elasticsearch批量更新數(shù)據(jù)

    今天小編就為大家分享一篇python3實(shí)現(xiàn)elasticsearch批量更新數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 通過代碼實(shí)例了解Python異常本質(zhì)

    通過代碼實(shí)例了解Python異常本質(zhì)

    這篇文章主要介紹了通過代碼實(shí)例了解Python1異常本質(zhì),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • python 處理string到hex腳本的方法

    python 處理string到hex腳本的方法

    今天小編就為大家分享一篇python 處理string到hex腳本的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python之?dāng)?shù)據(jù)序列化(json、pickle、shelve)詳解

    Python之?dāng)?shù)據(jù)序列化(json、pickle、shelve)詳解

    這篇文章主要介紹了Python之?dāng)?shù)據(jù)序列化(json、pickle、shelve)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Python自動化處理Excel數(shù)據(jù)的操作過程

    Python自動化處理Excel數(shù)據(jù)的操作過程

    在實(shí)際數(shù)據(jù)處理和分析過程中,經(jīng)常會遇到需要從大量數(shù)據(jù)中提取出特定日期范圍內(nèi)的信息的需求,本文將介紹如何使用Python的pandas庫來處理Excel文件,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • Python使用Dash開發(fā)網(wǎng)頁應(yīng)用的方法詳解

    Python使用Dash開發(fā)網(wǎng)頁應(yīng)用的方法詳解

    本文主要是通過Dash的Checklist組件,簡單介紹使用Dash開發(fā)的Web應(yīng)用,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以參考一下
    2022-09-09
  • python網(wǎng)絡(luò)爬蟲基于selenium爬取斗魚直播信息

    python網(wǎng)絡(luò)爬蟲基于selenium爬取斗魚直播信息

    目前是直播行業(yè)的一個爆發(fā)期,由于國家對直播行業(yè)進(jìn)行整頓和規(guī)范,現(xiàn)在整個直播行業(yè)也在穩(wěn)固發(fā)展。隨著互聯(lián)網(wǎng)和網(wǎng)絡(luò)直播市場的快速發(fā)展,相信未來還有廣闊的發(fā)展前景。今天用selenium爬取一下斗魚直播信息將代碼分享給大家
    2022-03-03
  • 關(guān)于numpy強(qiáng)制類型轉(zhuǎn)換的問題

    關(guān)于numpy強(qiáng)制類型轉(zhuǎn)換的問題

    這篇文章主要介紹了關(guān)于numpy強(qiáng)制類型轉(zhuǎn)換的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python中TypeError: int object is not iterable錯誤分析及解決辦法

    Python中TypeError: int object is not 

    在Python中,當(dāng)你嘗試對一個非迭代對象(如整數(shù)、浮點(diǎn)數(shù)等)使用迭代操作(如for循環(huán)、列表推導(dǎo)式中的迭代等)時,會觸發(fā)TypeError: 'int' object is not iterable錯誤,所以本文給大家介紹了Python中TypeError: int object is not iterable錯誤分析及解決辦法
    2024-08-08
  • Python3 replace()函數(shù)使用方法

    Python3 replace()函數(shù)使用方法

    這篇文章主要介紹了Python3 replace()函數(shù)使用方法,需要的朋友可以參考下
    2018-03-03

最新評論

板桥市| 东山县| 津市市| 乐平市| 囊谦县| 扎兰屯市| 天镇县| 平阴县| 开远市| 农安县| 兰考县| 始兴县| 宁国市| 眉山市| 湟源县| 林芝县| 古蔺县| 崇仁县| 阳曲县| 宜兰市| 泌阳县| 台安县| 紫云| 安乡县| 长子县| 贵港市| 南京市| 清水县| 株洲县| 常山县| 湘西| 凭祥市| 特克斯县| 威远县| 隆子县| 海阳市| 荔浦县| 迁西县| 崇明县| 赣榆县| 铁岭市|