1. 程式人生 > >4-9 內置函數和匿名函數的題

4-9 內置函數和匿名函數的題

portfolio 得到 span *** val 匿名 匿名函數 1.2 代碼

1,用map來處理字符串列表,把列表中所有人都變成sb,比方alex_sb

name=[oldboy,alex,wusir]
name1 = [i for i in map(lambda x:x+_sb,name)]
print(name1)

2,用map來處理下述l,然後用list得到一個新的列表,列表中每個人的名字都是sb結尾

l=[{name:alex},{name:y}]
l2 = [i for i in map(lambda x:x[name]+_sb,l)]
print(l2)

3,用filter來處理,得到股票價格大於20的股票名字

shares={
   IBM:36.6,
   Lenovo:23.2,
   oldboy:21.2,
   ocean:10.2,
}
l = filter(lambda x:shares[x]>20,shares)
for i in l:
    print(i)

4,有下面字典,得到購買每只股票的總價格,並放在一個叠代器中。

portfolio = [
    {name: IBM, shares: 100, price: 91.1},
    {name: AAPL, shares: 50, price: 543.22},
    {
name: FB, shares: 200, price: 21.09}, {name: HPQ, shares: 35, price: 31.75}, {name: YHOO, shares: 45, price: 16.35}, {name: ACME, shares: 75, price: 115.65}] li = [i for i in map(lambda x: x[price] * x[shares], portfolio)] print(li)

5,還是上面的字典,用filter過濾出單價大於100的股票。

li = [i for i in filter(lambda x:x[price]>100,portfolio)]
print(li)

6,有下列三種數據類型。寫代碼,最終得到的是(每個元祖第一個元素>2,第三個*至少是4個。)[(3, ‘wusir‘, ‘****‘), (4, ‘太白‘, ‘*******‘)]這樣的數據。

l1 = [1,2,3,4,5,6]
l2 = [oldboy,alex,wusir,太白,日天]
tu = (**,***,****,*******)
for i in zip(l1,l2,tu):
    print(i)

7,將l1按照列表中的每個字典的values大小進行排序,形成一個新的列表。

l1 = [{sales_volumn: 0},
     {sales_volumn: 108},
     {sales_volumn: 337},
     {sales_volumn: 475},
     {sales_volumn: 396},
     {sales_volumn: 172},
     {sales_volumn: 9},
     {sales_volumn: 58},
     {sales_volumn: 272},
     {sales_volumn: 456},
     {sales_volumn: 440},
     {sales_volumn: 239}]
li = sorted(l1,key=lambda i:i[sales_volumn])
print(li)

4-9 內置函數和匿名函數的題