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

Python函數的迭代器與生成器的示例代碼

 更新時間:2020年06月18日 09:15:49   作者:其實還好啦  
這篇文章主要介紹了Python函數的迭代器與生成器的相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

函數的迭代器

函數的強大功能叫做迭代器,Python里面最具威力的功能之一。迭代器我們聽起來會感覺非常陌生,在list、tuple都有用到它,我們是使用for和in取列表中的每一個元素,對每個元素依次處理,這種方法就叫做迭代,實現這種方法的函數叫做迭代器。迭代器中有兩個基本的函數,這個函數叫做方法,這個是面向對象編程稱呼的一個方法,這兩個方法叫做iter()和next()。

1.什么是迭代?迭代是一個重復的過程,并且每次重復都是基于上一次的結果而來

2.要想了解迭代器到底是什么?必須先了解一個概念,即什么是可迭代的對象? 可迭代的對象:在python中,但凡內置有'‘iter''方法的對象,都是可迭代的對象

3.迭代器:迭代取值工具,可迭代的對象執(zhí)行iter方法得到的返回值就是迭代器對象

舉例演示-迭代器定義一個列表,處理成處理器

list1=[1,2,3,4] 
it=iter(list1)#賦值變量 
print(next(it)) 
print(next(it)) 
print(next(it)) 
print(next(it))

舉例演示-輸出異常

list1=[1,2,3,4] 
it=iter(list1)#賦值變量 
print(next(it)) 
print(next(it)) 
print(next(it)) 
print(next(it)) 
print(next(it))#except,超出列表范圍會報錯誤信息StopIteration

總結

每調用一次next()會輸出iter()里面的下一個元素

一直到輸出完成

超出長度就會出現異常

函數的生成器

我們感受到迭代器的功能的強大,如何自己制作一個迭代器呢?

舉例演示-簡單迭代器range()函數

for i in range(10,20,2):#第一個參數是開始參數;第二個參數是結束參數;第三個參數是步長

 print(i)

如果步長為小數0.5是否可以,則會返回類型錯誤的信息

Range()函數必須是整數哦

舉例演示-如何優(yōu)化上述問題,支持小數

引用yield,帶yield的函數就叫做生成器

def frange(start,stop,step):
  x=start#定義一個變量  
  while x<stop: 
   yield x #沒有yield,while會把所有的值一次性進行返回;yield運行到這個位置,會暫停記錄當前的位置,當你再次去調用一個next的時候,會根據當前的位置返回一個值給你   
   x+=step 
for i in frange(10,20,0.5):
  print(i)

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

相關文章

  • python使用正則篩選信用卡

    python使用正則篩選信用卡

    這篇文章主要為大家詳細介紹了python使用正則篩選信用卡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T

    tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU

    這篇文章主要介紹了tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Django中幾種重定向方法

    Django中幾種重定向方法

    這篇文章主要介紹了Django中幾種重定向方法,本文講解了使用HttpResponseRedirect、redirect、reverse以及配置文件中配置URL等方法,需要的朋友可以參考下
    2015-04-04
  • python入門之基礎語法學習筆記

    python入門之基礎語法學習筆記

    學習python過程中需要了解的一些基礎語法特整理一下方便更開始接觸python的朋友
    2020-02-02
  • colab中修改python版本的全過程

    colab中修改python版本的全過程

    日 對于沒有服務器的研究生來說,Colab無疑是性價比最高的GPU選擇,下面這篇文章主要給大家介紹了關于如何利用colab修改python版本的相關資料,需要的朋友可以參考下
    2022-04-04
  • Python實現FIFO緩存置換算法

    Python實現FIFO緩存置換算法

    這篇文章主要為大家詳細介紹了Python實現FIFO(先進先出)緩存置換算法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 使用Python3 編寫簡單信用卡管理程序

    使用Python3 編寫簡單信用卡管理程序

    這篇文章主要介紹了使用Python3 編寫簡單信用卡管理程序的代碼,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2016-12-12
  • python批量從es取數據的方法(文檔數超過10000)

    python批量從es取數據的方法(文檔數超過10000)

    今天小編就為大家分享一篇python批量從es取數據的方法(文檔數超過10000),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python繪制七段數碼管實例代碼

    Python繪制七段數碼管實例代碼

    這篇文章主要介紹了Python繪制七段數碼管實例代碼,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python IDE環(huán)境之 新版Pycharm安裝詳細教程

    Python IDE環(huán)境之 新版Pycharm安裝詳細教程

    這篇文章主要介紹了Python IDE環(huán)境之 新版Pycharm安裝教程,本文教程給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03

最新評論

武功县| 津南区| 平度市| 潜江市| 台东县| 德令哈市| 永嘉县| 六盘水市| 通辽市| 临湘市| 米林县| 望谟县| 南郑县| 襄城县| 会同县| 界首市| 奉贤区| 葵青区| 青神县| 舟山市| 陇川县| 舟山市| 易门县| 榆社县| 那坡县| 宁城县| 芦山县| 大理市| 保德县| 辰溪县| 黄平县| 沙河市| 调兵山市| 新龙县| 兴宁市| 雷山县| 梁河县| 都安| 定南县| 长葛市| 威海市|