亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python教程之無限迭代器的使用詳解

 更新時間:2022年09月30日 08:15:39   作者:海擁  
Python的Itetool是一個模塊,它提供了各種函數(shù),這些函數(shù)在迭代器上工作以產(chǎn)生復雜的迭代器。該模塊作為一個快速,內(nèi)存效率的工具,可以單獨使用或組合使用以形成迭代器代數(shù)。本文就來和大家詳細聊聊無限迭代器,感興趣的可以了解一下

Python的Itetool是一個模塊,它提供了各種函數(shù),這些函數(shù)在迭代器上工作以產(chǎn)生復雜的迭代器。該模塊作為一個快速,內(nèi)存效率的工具,可以單獨使用或組合使用以形成迭代器代數(shù)

例如,假設(shè)有兩個列表,并且您想要將它們的元素相乘。有幾種方法可以實現(xiàn)這一目標??梢允褂脴闼氐姆椒ǎ赐瑫r迭代列表的元素并將它們相乘。另一種方法是使用 map 函數(shù),即通過將 mul 運算符作為第一個參數(shù)傳遞給 map 函數(shù),并將 List 作為該函數(shù)的第二個和第三個參數(shù)傳遞。讓我們看看每種方法所花費的時間。

# 演示迭代器模塊的Python程序


import operator
import time

# 定義列表
L1 = [1, 2, 3]
L2 = [2, 3, 4]

# 映射函數(shù)之前的開始時間
t1 = time.time()

# 計算結(jié)果
a, b, c = map(operator.mul, L1, L2)

# 映射函數(shù)后的結(jié)束時間
t2 = time.time()

# 映射函數(shù)花費的時間
print("Result:", a, b, c)
print("Time taken by map function: %.6f" %(t2 - t1))

# 初始方法之前的開始時間
t1 = time.time()

# 使用for循環(huán)計算結(jié)果
print("Result:", end = " ")
for i in range(3):
	print(L1[i] * L2[i], end = " ")
	
# 樸素方法后的結(jié)束時間
t2 = time.time()
print("\nTime taken by for loop: %.6f" %(t2 - t1))

輸出:

Result: 2 6 12
Time taken by map function: 0.000005
Result: 2 6 12 
Time taken by for loop: 0.000014

在上面的示例中,可以看出 map 函數(shù)所花費的時間大約是 for 循環(huán)所用時間的一半。這表明迭代工具是快速、內(nèi)存高效的工具。

此模塊提供的不同類型的迭代器包括:

  • 無限迭代器
  • 組合迭代器
  • 終止迭代器

無限迭代器

Python 中的迭代器是可以與“for in 循環(huán)”一起使用的任何 Python 類型。Python 列表、元組、字典和集合都是內(nèi)置迭代器的示例。但是迭代器對象不必窮盡,有時它可以是無限的。這種類型的迭代器稱為無限迭代器。

Python 提供了三種類型的無限迭代器:

計數(shù)(開始,步驟)

此迭代器從“開始”數(shù)字開始打印并無限打印。如果提到步驟,則跳過數(shù)字,否則默認情況下步驟為1。請參閱下面的示例,了解它與 for in 循環(huán)的用法。

例:

# 演示無限迭代器的Python程序

import itertools

# for 循環(huán)
for i in itertools.count(5, 5):
	if i == 35:
		break
	else:
		print(i, end =" ")

輸出:

5 10 15 20 25 30

循環(huán)(可迭代)

此迭代器按傳遞的容器中的順序打印所有值。當所有元素都以循環(huán)方式打印時,它將再次從頭開始重新開始打印。

示例 1:

# 演示無限迭代器的Python程序

import itertools

count = 0

# for 循環(huán)
for i in itertools.cycle('AB'):
	if count > 7:
		break
	else:
		print(i, end = " ")
		count += 1

輸出:

A B A B A B A B 

示例 2: 使用下一個函數(shù)。

# 演示無限迭代器的Python程序

import itertools

l = ['Geeks', 'for', 'Geeks']

# 定義迭代器
iterators = itertools.cycle(l)

# for 循環(huán)
for i in range(6):
	
	# Using next function
	print(next(iterators), end = " ")

組合迭代器

輸出:

Geeks for Geeks Geeks for Geeks 

重復(值、數(shù))

此迭代器重復打印傳遞的值無限次。如果提到可選關(guān)鍵字 num,則它會重復打印 num 次數(shù)。

例:

# 演示 repeat() 工作的Python代碼
	
# 為迭代器操作導入“itertools”
import itertools
	
# 使用 repeat() 重復打印數(shù)字
print ("Printing the numbers repeatedly : ")
print (list(itertools.repeat(25, 4)))

輸出:

Printing the numbers repeatedly : 
[25, 25, 25, 25]

到此這篇關(guān)于Python教程之無限迭代器的使用詳解的文章就介紹到這了,更多相關(guān)Python無限迭代器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • LyScript實現(xiàn)Hook改寫MessageBox的方法詳解

    LyScript實現(xiàn)Hook改寫MessageBox的方法詳解

    LyScript可實現(xiàn)自定義匯編指令的替換功能。用戶可自行編寫匯編指令,將程序中特定的通用函數(shù)進行功能改寫與轉(zhuǎn)向操作,此功能原理是簡單的Hook操作。本文將詳細介紹Hook改寫MessageBox的方法,感興趣的可以了解一下
    2022-09-09
  • Python itertools庫高效迭代藝術(shù)實例探索

    Python itertools庫高效迭代藝術(shù)實例探索

    Python 中的?itertools?庫為迭代器操作提供了豐富的工具集,使得處理迭代對象變得更加高效和靈活,本篇文章將深入討itertools庫的常用方法,通過詳實的示例代碼演示其在解決各種問題中的應(yīng)用
    2024-01-01
  • python實現(xiàn)俄羅斯方塊小游戲

    python實現(xiàn)俄羅斯方塊小游戲

    這篇文章主要為大家詳細介紹了python實現(xiàn)俄羅斯方塊小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • Python實現(xiàn)的爬取百度貼吧圖片功能完整示例

    Python實現(xiàn)的爬取百度貼吧圖片功能完整示例

    這篇文章主要介紹了Python實現(xiàn)的爬取百度貼吧圖片功能,結(jié)合完整實例形式分析了Python實現(xiàn)的百度貼吧圖片爬蟲相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • python找出一個列表中相同元素的多個索引實例

    python找出一個列表中相同元素的多個索引實例

    今天小編就為大家分享一篇python找出一個列表中相同元素的多個索引實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python網(wǎng)絡(luò)編程實例簡析

    python網(wǎng)絡(luò)編程實例簡析

    這篇文章主要介紹了python網(wǎng)絡(luò)編程,有不錯的借鑒價值,需要的朋友可以參考下
    2014-09-09
  • Django使用httpresponse返回用戶頭像實例代碼

    Django使用httpresponse返回用戶頭像實例代碼

    這篇文章主要介紹了Django使用httpresponse返回用戶頭像實例代碼
    2018-01-01
  • python kafka 多線程消費者&手動提交實例

    python kafka 多線程消費者&手動提交實例

    今天小編就為大家分享一篇python kafka 多線程消費者&手動提交實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 深入理解pytorch庫的dockerfile

    深入理解pytorch庫的dockerfile

    這篇文章主要介紹了pytorch庫的dockerfile,主要包括dockerfile命令,使用指令的注意點及存在的一些問題,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • python中的隨機數(shù)種子seed()用法說明

    python中的隨機數(shù)種子seed()用法說明

    這篇文章主要介紹了python中的隨機數(shù)種子seed()用法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評論