溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用python generators

發(fā)布時間:2022-03-18 14:34:24 來源:億速云 閱讀:111 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細講解有關(guān)如何使用python generators,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

使用python generators(生成器)

generator函數(shù)允許創(chuàng)建類似迭代器的函數(shù)。他們允許程序員以一種簡單快速的方式創(chuàng)建迭代器。下面通過一個例子來解釋這個概念。

假設要對從1開始的前100000000個完全平方數(shù)求和。

看起來很容易對吧。使用列表推導式可以很輕松的做到這一點,但是它的輸入量過大。下面為一示例:

t1 =time.clock() sum([i * i for i in range(1, 100000000)]) t2 = time.clock() time_diff = t2 - t1 print(f"It took {time_diff} Secs to execute this method") # Ittook 13.197494000000006 Secs to execute this method

在增加求和的完全平方數(shù)時,由于需要大量計算時間,這種方法并不夠靈活。這時python生成器就派上用場了。將方括號替換為圓括號后,列表推導式更改為生成器表達式。現(xiàn)在計算花費的時間:

t1 = time.clock() sum((i * i for i in range(1, 100000000))) t2 = time.clock() time_diff = t2 - t1 print(f"It took {time_diff} Secs to execute this method") # Ittook 9.53867000000001 Secs to execute this method

關(guān)于“如何使用python generators”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI