4,用map來處理字串列表,把列表中所有人都變成sb,比方alex_sb
name=["oldboy
","alex
","wusir"]
print(list(map(lambda a: a+"
_"+"
sb" ,name)))
5.用map來處理下述l,然後用list得到乙個新的列表,列表中每個人的名字都是sb結尾
l=[,]print(list(map(lambda a: a["
name
"]+"
sb",l)))
6. 用filter來處理,得到****大於20的**名字
shares=
shares=f1 = filter(lambda k: shares[k] > 20, shares)
print(list(f1))
7.有下面字典,得到購買每只**的總**,並放在乙個迭代器中。
#結果:list一下[9110.0, 27161.0,......]
#portfolio = [#,
#,#,
#,#,
#]
defdic(dc):
return dc['
shares
']*dc['
price']
m =map(dic,portfolio)
(list(m))
print(list(map(lambda a: a['
shares
']*a['
price
'],portfolio)))
8.#用filter過濾出單價大於100的**。
#portfolio = [#,
#,#,
#,#,
#]
print(list(filter(lambda a: a["price
"]<100,portfolio)))
defdic(a):
return a['
price
']<100
print(list(filter(dic,portfolio)))
9.有下列三種資料型別
l1 = [1,2,3,4,5,6]l2 = ['
oldboy
','alex
','wusir
','太白
','日天']
tu = ('
**','
***','
****
','*******')
## 寫**,最終得到的是(每個元祖第乙個元素》2,第三個*至少是4個)
## [(3, 'wusir', '****'), (4, '太白', '*******')]這樣的資料
(list(zip(l1, l2, tu)))
print(list(filter(lambda el: el[0]>2 and len(el[2])>=4, zip(l1, l2, tu))))
10.有如下資料型別:
將l1按照列表中的每個字典的values大小進行排序,形成乙個新的列表。**
l1 = [ ,,,
,,,,
,,,,
]
lst = sorted(l1,key = lambda d:d["sales_volumn
"],reverse=true)
print(lst)
氣泡排序的方法:(此答案的關鍵就是資料的位置交換,這裡直接用=交換了)
l1 = [ ,,,,,,,
,,,,
]for j in
range(len(l1)):
for i in range(len(l1)-1):
if l1[i]['
sales_volumn
'] > l1[i + 1]['
sales_volumn']:
l1[i][
'sales_volumn
'] , l1[i + 1]['
sales_volumn
'] = l1[i + 1]['
sales_volumn
'],l1[i]['
sales_volumn']
print(l1)
匿名函式,內建函式
lambda函式是一種快速定義單行的最小函式,可以用在任何需要函式的地方 一般函式定義 def fun x,y return x y匿名函式lambda定義 r lambda x,y x y print r 2,3 格式 lambda 引數列表 return 表示式 變數 lambda語句中,冒號前...
匿名函式,內建函式
匿名函式,他沒有繫結名字,使用一次即被收回,加括號既可以執行。lambda x,y x y 報錯 res lambda x,y x y 1,2 print res 不報錯 1.bytes 解碼字元 2.chr ord ascii 數字轉為字元 字元轉化為數字 3.divmod 分別取商和餘數 4.e...
匿名函式及內建函式
1.lamda匿名函式 a lambda x x x print a 6 不需要def宣告,一句話就可以宣告出來乙個函式 注意 1.函式的引數可以有多個,多個引數之間用逗號隔開 2.匿名函式不管多複雜,只能寫一行,邏輯結束後直接返回資料 2.sorted 排序函式 sorted iterable,k...