国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python列表生成式與生成器操作示例

2020-01-04 14:51:48
字體:
供稿:網(wǎng)友

本文實例講述了Python列表生成式與生成器操作。分享給大家供大家參考,具體如下:

列表生成式:能夠用來創(chuàng)建list的生成式

比如想要生成類似[1*1,2*2,3*3,…..100*100]的這種list

可以用

[x * x for x in range(1,11)]

這樣就能生成,除此之外,后面還能添加判斷條件來篩選

比如

[x * x for x in range(1,11) if x%2=0] 

這樣就能篩選出僅有偶數(shù)的平方

還能用多層循環(huán)來生成全排列

[m+n for m in 'ABC' for n in 'XYZ']

總之 列表生成式能夠快速的生成滿足條件的list

下面是一個讓list中所有字符串變?yōu)樾懙睦?/p>

[s.lower() for s in ['TIM','JOHN','MARY']

生成器:就是未循環(huán)完的列表,這是為了節(jié)約電腦內(nèi)存,設立的一種一邊循環(huán)一邊計算的機制。

創(chuàng)建的方法也是很簡單,其中一種就是把列表生成式的[]改成()就可以了

而調(diào)用的時候也一般不用麻煩的next()的方法,而是用for循環(huán)來遍歷

比如:

g = (x*x for x in range(10))for n in g:  print(n)

運行結果:

0
1
4
9
16
25
36
49
64
81

這樣就能遍歷出所有的生成器中的元素

另一種生成器的方法:如果函數(shù)中包含有yield關鍵字,則這是一個生成器

def odd():  print('step 1')  yield 1  print('step 2')  yield(3)  print('step 3')  yield(5)

使用(遍歷)方法:

g=odd()for i in g:  print(i)

運行結果:

step 1
1
step 2
3
step 3
5

希望本文所述對大家Python程序設計有所幫助。


注:相關教程知識閱讀請移步到python教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 德清县| 海淀区| 黄梅县| 湄潭县| 且末县| 铁岭市| 民丰县| 黑河市| 九龙城区| 澎湖县| 龙游县| 枝江市| 疏附县| 太白县| 栾川县| 建平县| 洞口县| 海兴县| 淅川县| 图们市| 南汇区| 房产| 巴彦县| 策勒县| 志丹县| 黎平县| 罗平县| 中方县| 大邑县| 普兰县| 茶陵县| 桂阳县| 滦南县| 武隆县| 无棣县| 丘北县| 麻栗坡县| 汉源县| 汉源县| 宁阳县| 巍山|