Python練習 生成器表示式 篩選與運算

2022-04-06 00:31:53 字數 1199 閱讀 4703

#

l = [10, 2, 3, 4, 5, 6, 7]

l1 = [int(i)**2 for i in l] #

得到乙個新列表l1,新列表中每個元素是l中對應每個元素值的平方

print

(l1)

l1 = [i for i in l1 if i > 40]#

過濾出l1中大於40的值,然後求和

print(sum(l1))

以上,沒啥可說的

#

shares =

#問題一:得出****大於30的**名字列表

l = [i for i in shares if float(shares[i]) >30]

print

(l)#

問題二:求出所有**的總**

l1 = [i for i in

shares.values()]

print(sum(l1))

以上,還是特麼沒什麼可說的

#

#有兩個列表,分別存放來老男孩報名學習linux和python課程的學生名字

linux = ['

鋼彈', '

小壁虎', '

小虎比', '

alex

', '

wupeiqi

', '

yuanhao']

python = ['

dragon

', '

鋼彈', '

zhejiangf4

', '

小虎比']#

問題一:得出既報名linux又報名python的學生列表

l = [i for i in linux if i in

python]

print

(l)#

問題二:得出只報名linux,而沒有報名python的學生列表

l = [i for i in linux if i not

inpython ]

print

(l)#

問題三:得出只報名python,而沒有報名linux的學生列表

l = [i for i in python if i not

inlinux]

print(l)

以上,依然沒有什麼可說的

馬德,今天是乙個無言的結局啊

Python生成器表示式

簡介 生成器表示式並不真正的建立數字列表,而是返回乙個生成器物件,此物件在每次計算出乙個條目後,把這個條目 產生 yield 出來。生成器表示式使用了 惰性計算 或稱作 延時求值 的機制。序列過長,並且每次只需要獲取乙個元素時,應該考慮生成器表示式而不是列表解析。語法 expression for ...

練習 生成器和模組

1.寫乙個生成式能夠產生的資料為 1,4,27,256,3125,9 9num1 n n for n in range 1,10 print next num1 2.寫乙個生成式能夠產生1 10中所有半徑是偶數的圓的面積num2 math.pi r 2 for r in range 1,11 if ...

生成器表示式

生成器 生成器本質是迭代器,允許自定義邏輯的迭代器 迭代器和生成器區別 迭代器本身是系統內建的.重寫不了.而生成器是使用者自定義的,可以重寫迭代邏輯 生成器可以用兩種方式建立 1 生成器表示式 裡面是推導式,外面用圓括號 2 生成器函式 用def定義,裡面含有yield 1 生成器表示式 gener...